rails

Ruby on Rails

Subscribe to updates I use rails


Statistics on rails

Number of watchers on Github 38924
Number of open issues 1062
Average time to close an issue about 17 hours
Main language Ruby
Average time to merge a PR about 18 hours
Open pull requests 640+
Closed pull requests 344+
Last commit 4 months ago
Repo Created over 10 years ago
Repo Last Updated 4 months ago
Size 156 MB
Homepage http://rubyonrail...
Organization / Authorrails
Contributors419
Page Updated
Do you use rails? Leave a review!
View open issues (1062)
View rails activity
View TODOs for rails (80)
View on github
Latest Open Source Launches
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating rails for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

Welcome to Rails

Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern.

Understanding the MVC pattern is key to understanding Rails. MVC divides your application into three layers, each with a specific responsibility.

The Model layer represents your domain model (such as Account, Product, Person, Post, etc.) and encapsulates the business logic that is specific to your application. In Rails, database-backed model classes are derived from ActiveRecord::Base. Active Record allows you to present the data from database rows as objects and embellish these data objects with business logic methods. You can read more about Active Record in its README. Although most Rails models are backed by a database, models can also be ordinary Ruby classes, or Ruby classes that implement a set of interfaces as provided by the Active Model module. You can read more about Active Model in its README.

The Controller layer is responsible for handling incoming HTTP requests and providing a suitable response. Usually this means returning HTML, but Rails controllers can also generate XML, JSON, PDFs, mobile-specific views, and more. Controllers load and manipulate models, and render view templates in order to generate the appropriate HTTP response. In Rails, incoming requests are routed by Action Dispatch to an appropriate controller, and controller classes are derived from ActionController::Base. Action Dispatch and Action Controller are bundled together in Action Pack. You can read more about Action Pack in its README.

The View layer is composed of templates that are responsible for providing appropriate representations of your application's resources. Templates can come in a variety of formats, but most view templates are HTML with embedded Ruby code (ERB files). Views are typically rendered to generate a controller response, or to generate the body of an email. In Rails, View generation is handled by Action View. You can read more about Action View in its README.

Active Record, Active Model, Action Pack, and Action View can each be used independently outside Rails. In addition to that, Rails also comes with Action Mailer (README), a library to generate and send emails; Active Job (README), a framework for declaring jobs and making them run on a variety of queueing backends; Action Cable (README), a framework to integrate WebSockets with a Rails application; Active Storage (README), a library to attach cloud and local files to Rails applications; and Active Support (README), a collection of utility classes and standard library extensions that are useful for Rails, and may also be used independently outside Rails.

Getting Started

  1. Install Rails at the command prompt if you haven't yet:

    $ gem install rails
    
  2. At the command prompt, create a new Rails application:

    $ rails new myapp
    

where myapp is the application name.

  1. Change directory to myapp and start the web server:

    $ cd myapp
    $ rails server
    

Run with --help or -h for options.

  1. Using a browser, go to http://localhost:3000 and you'll see: Yay! Youre on Rails!

  2. Follow the guidelines to start developing your application. You may find the following resources handy:

Contributing

Code Triage Badge

We encourage you to contribute to Ruby on Rails! Please check out the Contributing to Ruby on Rails guide for guidelines about how to proceed. Join us!

Trying to report a possible security vulnerability in Rails? Please check out our security policy for guidelines about how to proceed.

Everyone interacting in Rails and its sub-projects' codebases, issue trackers, chat rooms, and mailing lists is expected to follow the Rails code of conduct.

Code Status

Build Status

License

Ruby on Rails is released under the MIT License.

rails open issues Ask a question     (View All Issues)
  • over 1 year Rails db migration not recognising Null and Not Null for varchar
  • over 1 year Error when dropping a SQLite DB on MS-Windows
  • over 1 year ActiveSupport.on_load(:action_controller) triggered twice in API mode
  • over 1 year nil:NilClass exception when calling #performed? on controller
  • over 1 year Rails console was crash with Rails 5.0.0.1 and Ruby 2.3.1
  • over 1 year actions crash when the session_store is disabled
  • over 1 year ActiveJob Memory bloat
  • over 1 year Unexpected behaviour of root route with format: false constraint
  • over 1 year ActionCable streaming performance
  • over 1 year require_dependency fix for autoloading and STI causes circular dependency error
  • over 1 year Unchanged activerecord object has changed? = true with rails5 + postgres json[] column + special characters
  • over 1 year Validation associated and RecordInvalid and block render
  • over 1 year Etag is not working in Rails 5 anymore - always returns 200 OK if query has datetime comparison
  • over 1 year Ambiguous column name when mixing joins and left_outer_joins on the same association
  • over 1 year Rails tutorial authentication
  • over 1 year Hash parameter incorrectly encoded
  • over 1 year to_param method being deprecated gives warnings when params passed in a path helper
  • over 1 year Rails5 concurrency, with_connection and executor.wrap interaction
  • over 1 year listen should not listen on paths loaded from gems
  • over 1 year `ActiveRecord::Migration.maintain_test_schema!` not `updating schema_migrations` table with SQLite v3.7.9
  • over 1 year NotImplementedError: #views is not implemented mysql2
  • over 1 year Batch updating associations using `fields_for` and array names requires extra array
  • over 1 year Changing polymorphic parent not setting associated id if polymorphic parent has id=1
  • over 1 year Array of nested fields_for bug
  • over 1 year `deliver_later` raises unnecessarily due to overzealous mutation detection
  • over 1 year 5.0.0.1 / actionpack - undefined method `ref' for nil:NilClass*
  • over 1 year Reading username from default_file
  • over 1 year Can't cast ActionController::Parameters as hash for hstore attributes
  • over 1 year Same validation is not called in different contexts
  • over 1 year Overwrite controller namespace in route definition
rails open pull requests (View All Pulls)
  • Use (protected) getter for @parameters
  • Update redis.rb
  • use method provided by minitest
  • The BINARY Operator is only needed for string columns
  • AppGenerator: Replace 'rake' with 'rails_command'
  • Use symbol of mime type instead of object to get correct parser
  • Wisetara/deprecate args active support test case#assert nothing raised for pr
  • refactor ActiveRecord Relation.find_last method
  • Show correct return types for examples
  • Add capitalize_first method
  • Adding test to verify the last week when the year is leap
  • Enable to set 'accept-charset' for a form
  • Fix HABTM associations join table resolver bug on constants and symbols
  • Remove `alias exec_without_stmt exec_query`
  • [ci skip] Description for url_for internal methods
  • Handle circular references in Object#as_json
  • Modify ActiveRecord eql? to Handle STI classes
  • Prevent invocation of channel action if rejected connection
  • Fixed passing of delete method on button_to tag, creating wrong form csrf token
  • Add test cases about MySQL ORDER BY FIELD()
  • add mailer layouts files to template of mountable engine
  • Remove unused parameter from method
  • Add prefix and length options to has_secure_token
  • Backport to 4-2-stable "Let t.foreign_key use the same `to_table` twice"
  • Add `issue_template.md`
  • Alternative to #23638 log to STDOUT via env var
  • Use a tree data structure to build template digests
  • Add ActiveSupport::Notification to Channel::Base#perform_action
  • Added log "Rendering ...", when starting to render a template
  • Fix behavior of JSON encoding for Exception
  • Un-hide helper and assets options for controller generator
  • Config ac per env
  • Append sql_mode instead of overwriting in strict mode
  • generate ApplicationJob if it does not already exist
  • Correctly generate application_mailer.rb in mountable engines
  • Run user-supplied callbacks through the worker pool
  • Don't inherit from Concurrent::CountDownLatch
  • add forward_validation_context flag to AssociatedValidator
  • ActiveRecord: limit() and primary_key
  • Refactor named scope method definition
  • ActiveRecord find_nth finder respects limit()
  • Allow passing record being validated to error message generator
  • Raise IrreversibleOrderError when reversing an offset
  • Preserve readonly flag only for readonly association
  • Do not duplicate join records for has_and_belong_to_many associations
  • Simply use `select_value` in `show_variable`
  • Added some useful configuration options into configuring.md [ci skip]
  • Add update_gemfile in rails:update Rake task
  • Fix ActiveRecord's 'first' method with 'limit'. Fixes #23979
  • ensuring that exceptions arent raised if a user send empty parameters on an nested attributes parameter
  • Are you missing that template or did you omit it on purpose?
  • Do not destructively mutate passed options hash in route definitions
  • Dont call each when calling body on response to fix #23964
  • Update contributing guide such that contributors start from their fork
  • respect `pride` option
  • Use base 35 for generating secure tokens
  • Make verifier serializers in message encryptors customizable.
  • Improve String#demodulize method
  • fix `as_json()` when passing hashes to 'include' array
  • ActionCable action params passed in as hash with indifferent access
  • prevent 'attribute_changed?' from returning nil
  • Test coverage for dot notation with keyword-style args
  • Restore Hash#transform_keys behavior to always returning a Hash instance
  • Make variable_size_secure_compare public
  • Handle destroyed assets with id on new record via nested_assets
  • ActiveRecord remove_index fix for 5.0.0
  • Add missing test case for record_fetched_greater_than config
  • Lesser '.' objects for number helpers
  • Add a query_cache enabled/disable config
  • Dont clean connections on Integration tests
  • Fix PgArray to always deserialize strings with the scripts encoding
  • Guides changelog pass [ci skip]
  • ConncectionPool: Prevent reuse of a connection with open transactions
  • `number_to_phone` extended formatting
  • Possibly resolve #24028 - Warn about possible deadlock in Dependencies::Interlock
  • [WIP] Eager Load View Templates
  • Depend on puma ~> 3.4 in App templates, so that we can include the puma restart fix
  • Document know limitation about using `references` in conjunction with custom select clauses [ci skip]
  • Show open in editor link on debug exception page
  • Fail db rake tasks when the configuration misses the database name
  • Wrong ActiveRecord Object passed to has_many proc on through association
  • MariaDB documentation
  • use schema file digest to check of migrations change
  • WIP: Don't mutate the racall hash as it's not ours
  • The behavior of `filter_parameters` will be changed with Rails 5.1
  • ADD: new method for logging response status code and response content length
  • Don't return references from cache
  • Teach config.ru about relative_url_root
  • Fix lack of belongs_to validation when running db:setup and db:reset
  • Honor shallow: false on nested resources
  • change cable.coffee to cable.js [ci skip]
  • Robust-ify unsubscribe
  • Reject subscription on double subscribe
  • Followup to #24844
  • rm deprecated dynamic definition of route
  • Backport the use of the PORT environment variable for rails server
  • `travel/travel_to` travel time helpers, now raise on nested calls
  • http --> https
  • string inquiry should be case insensitive
  • [WIP] Introduce async subscription creation
  • Reduce Action Cable testing complexity
  • Disable QueryCache & Pending Migration Checks on ActiveRecord connection failure
  • Various Active Record fixes
  • Add explicit caller location to deprecation message
  • WIP: Use the main rails server process to fork all other dedicated processes for CoW benefit
  • Fix `ActiveRecord::Relation#create` scope leaking to callbacks
  • Pass over Action Cable docs
  • Add `take_or_create`, `take_or_create!` and `take_or_initialize` methods
  • Fix Railties test
  • update regexp which cleaned root path
  • ActiveRecord: set inverse association for associations with foreign_key
  • Fix validate_associated, now passes along validation context to assoc…
  • Helper path extraction should be case-insensitive (5.0)
  • Don't list out tasks as separately that are under lib, which cause them to be listed twice under Libraries and tasks.
  • Use original `Array#sum` to speed up calculating
  • Support precision compensated sum for Float value
  • Move already extracted helper modules/classes over to their own support files
  • PostgreSQL: Fix db:structure:load silent failure on SQL error
  • Fix getting binds from relation with default_scope and join
  • Allow `AssetUrlHelper#asset_url` to be used in mailers
  • Fix typo
  • Associations do not call `.to_proc` on Hash
  • [Action View] Don't create middleman `DetailsKey` instance
  • Fix security guide capitalization errors
  • Provides friendlier way to access queue adapters of a job.
  • ActionCable, sometimes add_channel is not called.
  • Fix: freeze when autoloaded_constant changes while iterating.
  • Perfomance fix for ActiveSupport::Inflector.ordinal
  • using same regex for identifying verions for running migrations and schema loading
  • Add config.action_dispatch.x_sendfile_mappings to configure path rewriting for Nginx's X-Accel-Redirect header
  • generate mailer layout files if it does not already exist
  • --skip generator options reduce included gems
  • Add documentation about Action Cable npm package
  • Add ActiveSupport::Notifications hook to ActionCable::Server.broadcast
  • Should work foreign key in test schema without `if supports_foreign_keys?` statement
  • Remove magic comment in generated `schema.rb`
  • Specify that we prefer that [ci skip] is added in issue name as well
  • Change some establish_connection logic
  • Don't perform unnecessary check with false, just use true/false values
  • Fix database runtimes on production log
  • Make pg adapter use bigserial for pk by default
  • Provide a default Content Security Policy (CSP) that is lenient yet secure
  • Fix ActiveRecord::LogSubscriber edge case
  • fix fixtures on multiple databases
  • sanitized_value should not remove cjk character
  • Access Session::CookieStore with Indifferent Access
  • Add Sauce Labs [for Action Cable JS Testing] to Travis CI
  • Cache root nodes; Scope wildcard dependency busts
  • Add empty label to empty options tag
  • Support testing recursively enqueued jobs
  • Fix `remove_reference` to be able to handle `to_table` option
  • Comment out jbuilder for normal apps too
  • Backport #18109 to 4-2-stable
  • Collapse all new default initializers into a single file
  • Use `ActiveRecord::RangeError` instead of `ActiveModel::RangeError`
  • Numeric value out of range is transrated to the specific exception
  • `channel_class_names` ignores channel namespaces
  • Stop logging all noisy stack trace when actual trace is empty and simply point where to configure trace
  • Cleanup Action View `abstract_unit`
  • Introduce the next_*day and prev_*day helpers for DateAndTime related Classes
  • Change SQLite3 boolean serialisation to use 0/1 rather than 't'/'f'.
  • Use SHA256 instead of SHA1
  • use ruby Enumerable#sum if available
  • [Feature] add 'expires_at' option to ActiveSupport::Cache::Store::Entry
  • Pass request params to ActionMailer::Preview
  • Fix default key length on cipher
  • Fix stated default value for escape_html_entities_in_json
  • Fix `rake db:migrate:status` with subdirectories
  • Use `take` instead of `first` in `ActiveRecord::Relation#first_or_create`
  • Add Action Cable tests
  • fixed a bug in ActionDispatch::RouteSet#recognize_path:
  • Support for unified Integer class in Ruby 2.4+
  • Raise better error for `belongs_to` `nil` scopes
  • Fix MIME type tests so that they do not take order into account.
  • Modifies mime-registration test not to interfere with real mime types
  • Fix default Action Cable adapter
  • Rename controller _filters to _callbacks in docs
  • Introduce new ActiveRecord transaction error classes
  • add mysql and sqlite3 default test
  • [WIP] Simplifying ActionView::TestCase
  • Check `details` and `messages for `ActiveModel::Errors#added?`
  • Adds calculations on multiple columns
  • Fix digesting non-HTML templates with non-unique logical names
  • Should not reuse `QUOTED_TRUE`, `QUOTED_FALSE`
  • Fix error message for out of range byte size integer value for consistency
  • For PostgreSQL >= 9.4 use `gen_random_uuid()`
  • Introduce `assert_changes` and `assert_no_changes`
  • Experimental Alternative to #25302
  • Backport 1f131fba4cf9497ee0c54bb4a51fd86ec76b76a4
  • add multi_caches helper for preloading multiple fragment caches in a single read_multi request
  • Remove CLIENT_FOUND_ROWS connection flag (use MySQL default)
  • Add Missing ActiveSupport::Rescuable to ActionCable::Channel
  • [WIP] Cleanup Active Record test suite internals
  • Fix `Type::Date#serialize` to return a date object correctly
  • Fixing the active record has many association test which is failing w…
  • Define `URI::Generic#as_json`
  • Fix url in routes DSL error message
  • Set counter caches to correct values in fixtures
  • ActionDispatch::DebugLocks
  • Silence DebugExceptions template render logs during exceptions
  • Prevent `table_comment` query if a table doesn't have a comment
  • Deprecate the behavior of AR::Dirty inside of after_(create|update|save) callbacks
  • Don't deserialize strings that look like GlobalIDs as GlobalIDs
  • Load :author_addresses fixture to keep data integrity
  • Extract foreign key action from `information_schema`
  • Use attribute_names over column_names
  • EventedFileUpdateChecker boots once per process
  • Change warning output direction to stdout
  • Use `inspect` in `type_cast_for_schema` for date/time and decimal values
  • remove needless comments
  • Remove default argument "options = nil"
  • Standardize Action Cable README.md
  • Do not depend on Rails git repository layout in ActiveSupport tests.
  • Fix race condition in websocket stream write
  • Store original exception in action_dispatch.exception, not exception cause
  • Fixed issue when template was containing a ruby comment at EOF:
  • Pass `pk: false` to `connection.insert` explicitly if do not have a primary key
  • Bring back support for callable cache key when rendering collection
  • close hijacked i/o socket after use (fixes #25613)
  • add bignum column into numeric_test
  • improved usage of uncountable for inflector specs
  • Remove redundant id_value argument from sql_for_insert
  • Move the warning about composite primary key to `AttributeMethods::PrimaryKey`
  • rake notes rspec's folder
  • [ci skip] add class level documentation to ActiveModel::Type::Boolean
  • Don't force a connection to be established in the query cache middleware
  • remove useless parameter
  • Return false only when habtm join table has composite primary keys
  • Correctly handle frozen options for ActiveRecord::Serialization#seria…
  • [WIP] Introduce form_with #25197
  • [wip] adding rel=noopener for link_to when target=blank_
  • speed up ActionDispatch::Journey::Route#matches?
  • Extract `quoted_binds` and `type_casted_binds`
  • Fix `select_rows` method signature for consistency
  • Fix ActionView::Helpers#current_page? with trailing space issue.
  • Fix fixture_path in plugin's test_helper template
  • Ensure result is cleared at ConnectionAdapters::PostgreSQLAdapter#execute_and_clear
  • Remove #select_one from Mysql2Adapter
  • Properly calculate cache key for queries with offset
  • Make OR more permissive, let folks write wrong queries if they want to
  • Explain meaning of the code very well and Remove confusion. [ci skip]
  • new method that only cache_if_truthy
  • Fix `ActiveRecord::AttributeMethods::PrimaryKey::ClassMethods::primary_key=`. Refactored tests activerecord/test/cases/batches_test.rb.
  • Fix performance regression in `TimeWithZone#to_time`
  • Delegate to `scope` rather than `merge!` for collection proxy
  • Allow MessageEncryptor to take advantage authenticated encryption modes
  • Deprecate locking of dirty records
  • reestablish current environment connection after creating all databases
  • Remove duplicate test.
  • Start documenting ActionController::TestCase again
  • Add documentation about `ActiveSupport.on_load`
  • allow the :converter of composed_of to be run with nil as an argument
  • supply more information as the csrf check fails
  • Prevent `MissingAttributeError` for nonexistent attribute in database
  • Use UUIDs as IDs for prepared statements in Postgresql
  • Better logging of cached partial renders
  • Fixes fixture_file_upload's fixture_path regression
  • make calling simple methods on collection proxies fast
  • Underscore environment variable in database configuration
  • Check that migration file exist before showing status by `db:migrate:…
  • Correctly return `associated_table` when `associated_with?` is true
  • Cache key checks delegations
  • Follow up of #25602
  • Raise ArgumentError when ActionController::TestCase receives unknown params
  • Don't validate the associated object, when validate: false is set.
  • Specified directories for routes, views and jobs tests
  • Only use provided units for number_to_human
  • Add `disabled_blank` to `select_tag`'s and `date`'s
  • Change the behaviour of ids_writter to use find instead of where.
  • Output which file rake log:clear is truncating
  • List names of error interpolation variables.
  • .to_i is unnecessary for puma threads.
  • Fixed issue with where.not with polymorphic association. Changed behaviour of where.not() with multiple condition
  • [railties] Added register_block_for method to register Railties engines blocks(eg: rake_tasks, generators)
  • Make `name` and `binds` to optional args for `exec_{insert,update,delete}`
  • Fixed: Optimistic locking does not work well with null in the database
  • Add link to 'Pry' in debugging guide [ci skip]
  • Improved creating the test databases for MySQL and PostgreSQL
  • Check if the logger exists before trying to use it
  • Correct usage for acceptance validator in guide
  • Finder bang method should call non bang method
  • Support multiple indexes on the same column when loading the schema
  • Clarify expires_now documentation
  • Could not delete a record that is not in default scope
  • add more array methods to straight delegation to speed up calling them
  • Fix inconsistent the signature of finder methods for collection association
  • Bind values when postgresql-like sql prepared statement is provided
  • Fix override issue for scope and limit in find_in_batches
  • Fix Accept header overwritten issue when "xhr: true" in integration test
  • `sql_for_insert` should be called inside `exec_insert`
  • Remove internal `sanitize` method
  • Remove `sanitize_conditions` and use `sanitize_sql` instead of `sanitize_conditions`
  • Fix `enum` with `alias_attribute`
  • Fix `pluck` with `limit` and `having` query for MySQL
  • Remove unnecessary `select` method for `CollectionProxy`
  • Fix does_not_support_reverse? to find sql functions with commas in nested brackets
  • `pluck` should use `records` (`load_target`) when `loaded?` is true
  • Add tests for RemoteConnection and RemoteConnections
  • Fully reset fixtures after a non-transactional test has run
  • Partially backport #20317
  • Avoid to handle polymorphic association for `AssociationQueryHandler`
  • WIP: Prototype using Rack upgrade.websocket
  • Allow the `integration_sesion` to be set early on ActionDispatch::Integration::Runner.
  • Doc on scoped has_many, dependent: :destroy
  • Remove unnecessary `any?` and `many?` methods for collection proxy
  • Make public asset use explicit
  • Format and send logs to logger.fatal from DebugExceptions
  • Keep arguments when re-serializing an ActiveJob after deserialization error
  • Asset pipeline: Remove documentation about outdated `config.assets.compress` option
  • Fix `find_by` with `ActiveRecord::Base` object
  • Remove `config.assets.compress` from documentation
  • Fix case insensitive check for text column in pg
  • Fixed issue with `where.not()` with polymorphic value
  • Add Enumerable#single
  • Add @queue variable to JobWrapper
  • Fix activerecord group method string param with multiple columns
  • Restore strong params to_hash behavior
  • Make `ActiveRecord::Base` object to preparable for predicate builder
  • Keep INNER JOIN when merging relations
  • Remove Unnecessary code in AR Dirty
  • Remove over meta programming in AR::Relation
  • fixes #26030: const_get with autoloading
  • Callbacks: leave less lines in the backtrace
  • ActiveRecord Transaction on_commit / on_rollback callbacks
  • Make preload query to prepared statements
  • load only changed locale files when updated
  • Quoting booleans should return a quoted value
  • Titleize inflector squashing "Id" at the end of a string
  • Clarify some CSRF points
  • call `.to_h` to avoid using deprecated method
  • Fix regression caused due to removal of select method from CollectionAssociation
  • Initial Rails Commands Infrastructure
  • Use `String#unicode_normalize`
  • Remove dead constants
  • Improve SecureToken by adding generate_#{attribute}
  • Added `#datalist_field_tag` to ActionView::Helpers::FormTagHelper and…
  • multiple database fixtures support (another solution of #24954)
  • Change some attributes of PredicateBuilder's value to be private
  • Register integer types limit correctly for postgresql adapter
  • Pass `set_inverse_instance` block to `sc.execute` for `SingularAssociation`
  • Decouple the building Arel ASTs for uniqueness validator
  • Remove extracting `polymorphic_base_class` for `Array` in `AssociationQueryValue`
  • Use applications db/migrate paths when available
  • Speed up Time.zone.now
  • Use log method instead of `ActiveSupport::Notifications.instrument`
  • ActiveRecord: don't query when the condition of exists? is blank
  • Avoid to call `set_inverse_instance` twice for `has_many` association
  • Allow translation to receive Proc as interpolation parameter in translation
  • support `-` as an argument to `rails runner`
  • Removed json dependency from ActiveSupport
  • Disconnects all connections in the pool before forking.
  • Whitelist non-scalar types without filtering in ActionController::Parameters
  • Avoid `RangeError` without explicit `limit`
  • Eager autoloading association classes
  • Handle short CSRF tokens when building a new token
  • Change Default Primary Keys to BIGINT
  • Clarify ActiveSupport::Rescuable#rescue_from behaviour to fallback to cause
  • Set target ruby version for rubocop to 2.2 instead 2.3.
  • Remove `AS::Multibyte`'s unicode table
  • fix `ActiveModel::Translation#human_attribute_name`
  • implement ActiveRecord-like attributes API for ActiveModel
  • Remove redundant explicit float conversions
  • Optimizing +distance_of_time_in_words+ method in date_helper.rb
  • List frameworks available to require
  • Restore RecordNotFound when *_ids= can't find records by ID
  • Add support to left outer join for update_all
  • Add test validating that Model.attribute_names cache is busted
  • Fix attributes names caching
  • WIP: Capybara Integration with Rails (AKA System Tests)
  • Make `process` and `process_with_kwargs` non-private methods.
  • Added possibility to check on `:priority` in test helper methods
  • Moved database-specific ActiveModel types into ActiveRecord
  • load the test target job class before run tests
  • Deprecate passing `name` to `indexes` like `tables`
  • Remove unnecessary `respond_to?(:indexes)` checking
  • Fix `add_index` to normalize column names and options
  • adding validation to update_attribute
  • Fix disable_text_with to refer to value option
  • show correct usage in console / dbconsole / runner / version command
  • ActionCable: also pass data hash when argument is optional
  • Fix `remove_index` to be able to remove expression indexes
  • Convert Date/Time#advance and #change to keyword args
  • 4-2-backport: activerecord/mysql2: Avoid setting @connection to nil, just close it
  • improve the documentation of the belongs_to :validate option
  • Extract `NumericData` model for tests
  • Add httpstatus 415, unsupported media type
  • Extract `quoted_binary` and use it rather than override `_quote`
  • Add types to ActiveRecord::Store accessors
  • `Broadcast#silence` breaks custom loggers that do not include `Logg…
  • fix the uniqueness validation scope with a polymorphic association
  • Spike which adds logging of unhandled exceptions to AsyncAdapter.
  • Be able to use String#blank? with invalid encoding
  • allow ActiveRecord::Core#slice to use array arg
  • Add npm support in new apps using --npm option
  • Log the original call site for an ActiveRecord query
  • Avoid unneccessarily converting nil to string
  • Support i18n key at translation of value in submit tag
  • Shouldn't stop the user due to bcrypts limitation
  • Support stop listening to individual broadcasts
  • id composite support
  • Include option to update the updated_at value for methods in ActiveRe…
  • Output which file rake log:clear is truncating
  • Make accessors generated by `Class#class_attribute` thread-safe.
  • Allow configurable attribute name on `#has_secure_password`
  • 3 2 stable
  • Backport #25192 to 4-2-stable
  • Fix queue_name for Que
  • Added touch option to ActiveRecord::CounterCache methods.
  • Should except `:distinct` rather than `:order` for `exists?`
  • Respect new records for `CollectionProxy#distinct`
  • Improve tests for ActiveRecord::Aggregations
  • Configure query caching (per thread) on the connection pool
  • clear the args of Thor when start rails server
  • Add form_with to unify form_tag/form_for.
  • Allow attribute_changed? method to receive to and from arrays
  • Fix Rails 3-2-stable on Ruby 2.3.1
  • Fix an issue with JSON encoding of "Infinity" and "NaN" values
  • The `default` arg of `index_name_exists?` makes to optional
  • deep symbolize keys on secrets.yml
  • Fix NameError: undefined local variable or method `result`
  • ActiveSupport::TimeZone#tzinfo cannot be nil anymore
  • Add missing `+` around a some literals.
  • [WIP] Allow the use of custom Javascript engines in new apps.
  • Use bulk SQL INSERT when bootstraping fixtures
  • Add :except_on option to validations
  • removed `@current` as it is not used
  • Add configuration hook for fetching Action Cable database connections
  • Fix arguments passing in testing isolation
  • Remove reference to outdated blog post.
  • Remove broken Renderer#with_defaults method
  • ActionCable channels unit-testing
  • Fix `apply_seconds_precision` not to be affected by `mathn`
  • Add PhantomJS runner for UJS integration tests
  • Add `Integer#round` and `Float#round` core extensions
  • make path helper work with `ActionController::Parameters`
  • Optimize many? and one? using exists?-like query.
  • Use absolute module reference for LegacyYamlAdapter
  • Add link to API documentation
  • Do not clear HTTP_COOKIES header after request
  • Allowing multiple columns to be passed to calculations
  • Fix unscope with subquery
  • Set default precision for `ActiveModel::Type::Decimal` to 18
  • Add a note explaining how DATABASE_URL gets applied to current Rails environment [ci skip]
  • Raise helpful error when running test database rake tasks and test da…
  • Backport fix to Float#as_json, BigDecimal#as_json
  • Fix ActionView::Helpers::DateHelper#distance_of_time_in_words test
  • Add explicit tests for mysql with and without prepared statements and binds+no binds.
  • Keep INNER JOIN when merging relations
  • Add missing documentation for MemoryStore#clear [ci skip]
  • Refactor ActionCable streaming
  • 5-0-stable: Fix explain logging with binds
  • Schema cache in YAML
  • Deprecate the behavior of returning `nil` on `Float::INFINITY.as_json`, `Float::NAN.as_json` and `BigDecimal::INFINITY.as_json`, `BigDecimal::NAN.as_json`.
  • Catch invalid UTF-8 JSON documents and respond with BadRequest
  • Remove useless `column_alias` in `subquery_for_count`
  • allow use of Proc in length validations
  • Generate migrations at path set by `config.paths["db/migrate"]`
  • Add verification for column type for enum
  • compute_asset_extname should explicitly return nil in else clause
  • Fixing "Adding Member Routes" documentation
  • Do not ping MySQL on connection checkout
  • Decouple ActionCable application logic from low-level logic
  • Fully initialize routes before the first request is handled
  • Reference calling methods [ci skip]
  • Use `SET CONSTRAINTS` for `disable_referential_integrity` without superuser privileges (take 2)
  • Initalize git repo when creatin new rails app
  • Specify the queue to be used with assert_enqueued_jobs
  • Fix inconsistent results when parsing large durations and constructing durations from code
  • Fix UUID primary key with default nil in legacy migration
  • Reduce the chance db:migrate end up rollback all version
  • Suppress `DISTINCT` clause outside aggregate function
  • new database.yml format
  • Fix `reflection.association_primary_key` for `has_many` association
  • Remove deprecated passing string to define callback
  • Fix generator command for nested (namespaced) rails engine (take 2)
  • Make all rails commands work in engine
  • Consistency between first() and last() with limit
  • PostgreSQL JSONB columns do not preserve the key order of hashes
  • Remove deprecated callbacks from ActionDispatch middlewares
  • Test inconsistent behavior of infinite values in PG date columns.
  • Action Cable owns database connection, not Active Record
  • Simplify the version specifier generated by prereleases
  • Use `count(:all)` in HasManyAssociation#count_records
  • Start on a guide for the Executor & Load Interlock
  • Don't pass `arel.engine` to `Arel::SelectManager.new`
  • Refactor enum to use `value` instead of `label` in the scope
  • Remove any `nil` attribute values from CSS/JS tag helpers
  • Raise if value for `enum` is nil
  • Default content type for `head` is `text/html`
  • DATABASE_URL updates development and test config
  • Remove `method_missing` in `Relation::Delegation`
  • Remove unused `association_key` and `table` methods in `Preloader::Association`
  • Add system checks if --webpack flag is set in rails new
  • Remove `HasAndBelongsToManyReflection#initialize`
  • Fix destroy with locking_column value null
  • Rename ActionDispatch::IntegrationTest into ActionDispatch::IntegrationTestCase
  • Fix ambigious error message of select query method [ci skip]
  • Fix ActiveRecord::Persistence#touch with locking
  • [ci skip] form_with in the getting started guide.
  • Math does not exist on ruby master, don't require beyond 2.4+
  • Fixes Marshalling With Autoload
  • Prevent negative IDs in output of #inspect.
  • Fix regression caused by collection_singular_ids= ignoring different …
  • Add lazy loading to #keys and #values methods in Session
  • video_tag should accept a fallback option
  • Copy AR assocation errors to foreign key
  • Enable query cache on all connection pools
  • PostgreSQL 10 converts unknown type to text type
  • Skip query cache for in_batches and friends
  • Support PostgreSQL 10 `pg_sequences`
  • fix docs for show_detailed_exceptions?
  • Support string Content-Type key for head
  • Honour content type headers when assigning content type in head, instead of always trying to determine it. Fixes #28850
  • Tell users where to put time zone aware types changes
  • Remove unused `Association#interpolate`
  • Fix regression in Numericality validator
  • `rename_table` renames primary key index name
  • Clarify intentions around method redefinitions
  • Added a way to fallback to a default message when adding an error on a model
  • Consolidate database specific JSON types to `Type::Json`
  • `DEFAULT_ENV` falls back to `default_env` when `RAILS_ENV` or `RACK_ENV` is an empty string
  • Issue #29200 scaffold reference display memory address
  • `scoping` should respect current class
  • Enable extending even if scope returns nil
  • Pass params __FILE__ and __LINE__ + 1 if class_eval with <<
  • Remove requirement on mathn
  • Document usage of QueryMethods#references with QueryMethods#or
  • Fix preloading has_many through with STI association
  • Fix polymorphic association with scope
  • Check for jQuery ajax
  • Drop DebugExceptions out of the default middleware stack
  • Correctly set user_supplied_options when there is no whitespace in option specification
  • Log subscriber - avoid rescuing certain exceptions
  • Document support for composite primary keys
  • When parent model has a scope, changing child attributes with has_many and accepts_nested_attributes_for causes parents not to be touch
  • Log internal ActionDispatch::DebugExceptions errors
  • Prevent extra `through_scope`
  • Fix callback in rails ujs
  • Ignore errors while loading db/structure into postgresql
  • Allow constant reloading to load modules transitively.
  • Fix server-generated JS response processing on IE9
  • Clarify behavior for ActiveSupport's String#first, String#last when limit is negative
  • some typos and rephrasing in system test guide [ci skip]
  • Fix association with extension issues
  • Fix example migrations in Associations guide
  • remove unused variable to in mirror_service_test.rb
  • Do not escape the response.body in tests (proposal)
  • Use respond_to test helpers
  • yarnpkg: correct exec syntax
  • Inflector.constantize should not remove intermediate modules if constants aren't loaded yet
  • Add missing support for modulo operations on durations
  • Fix `includes` unable to handle joins on case insensitive columns
  • Added method to generate CSV string from an Array of Hashes
  • Ensure that autoloaded constants is unique (with failing test)
  • Allow camelize to take a string or an old school boolean
  • Clarify language in Asset Pipeline Guide
  • Fix not expanded problem when passing an Array object as argument to the where method using composed_of column.
  • Update default HSTS max-age value to 1 year
  • Proposed Feature: Add DatabaseTasks#connection_class to simplify multiple database apps
  • Add docs for automatic inverse detection to association options
  • Serve unminified activestorage.js version
  • Prevent deadlocks when waiting for connection from pool.
  • Use map instead of each for ActiveRecord::Relation#destroy_all
  • Remove key from session by using session.delete
  • Fix bug with ActiveModel::Errors#added?
  • use activesupport concern for file initializbale under railties
  • [wip] Support UNION [ALL]
  • fixes #27157 CSRF protection documentation
  • Reduce log noise handling ActionController::RoutingErrors
  • Add bulk alter support for sqlite3
  • Fix multiline expression indexes for postgresql
  • Add priority options for form.select, options_for_select and options_from_collection_for_select
  • Allow type_for_attribute(:symbol)
  • Fix `transaction` reverting for migrations
  • Improve wording in getting started guide
  • Do not update `load_defaults` version when running `app:update`
  • delegate to, with private: true option
  • Add nested resources form helper description
  • Fix: `Testing an ActionController::Live controller leads to a deadlock `
  • delegate_privately - ability to delegate methods while keeping them private
  • Add ActiveModel::Attributes#attributes
  • Prevent serializing an active record constant from causing a stack overflow
  • Define callbacks on descendants.
  • Support local cache on memcache store read multi
  • Implement PDF Previewer Using Poppler
  • Use SuppressedSummaryReporter and Rails::TestUnitReporter only if needed
  • WIP: Parallel testing
  • Make `reflection.klass` raise if `polymorphic?` not to be misused
  • Remove label 'work in progress' for AM and AV guides
  • Fix invalid byte sequence error without `en_US.UTF-8` environment while rake guides:generate:html
  • Update rails-ujs readme
  • Show host in default storage.yml
  • Do not attempt to find inverse for polymorphic associations.
  • Add Randomness to :exponentially_longer
  • [ci skip] Update Action Mailer Documentation
  • Add support for connection pooling on RedisCacheStore
  • Docs: add_column(.. limit: ) re: datetime
  • add current_scope method for translations
  • `nil` test parameters should be `nil` in the controller
  • Allow to reset cache counters for multiple records
  • Improve the error (message) for associations to an invalid class
  • If association is a hash-like object preloading fails
  • Use bind params for basic where strings
  • Raise error for subsequent record #destroy's
  • Allow env-specific credentials by config
  • Merge Arel
  • Let select render default selected option for required field
  • Introduced Model.where.any method
  • Move SourceAnnotationExtractor under Rails module
  • Introduce explicit rails server handler option
  • Association creation and finding should work consistently
  • Add `Style/RedundantFreeze` to remove redudant `.freeze`
  • Add code and reason parameters to websocket close method
  • Active Record distinct & order #count regression
  • Make test queue adapter the default for testing
  • WIP - failing test for dependent: false
  • Update "Action View Form Helpers" guide
  • Use column alias of primary_key in limited_ids_for
  • Allow some purge in many.rb
  • Improve system test screenshots
  • has_(one/many)_attached presence validation
  • Fix CHANGELOGs [ci skip]
  • Fix 5-2-stable's changelogs [ci skip]
  • Update "Ruby on Rails 5.2 Release Notes" Guide [ci skip]
  • Use PredicateBuilder for bind params in Relation::Batches
  • Time column improvements
  • Fix a bug where DebugExceptions errors out when malformed query parameters are provided
  • ActionMailer::Base can unregister observer(s) and interceptor(s).
  • Default action_on_unpermitted_parameters to :raise in development
  • Fixes #32198 wrong Session name for Capybara
  • Add `use_year_names` option to date_select tag
  • Add `before?` and `after?` methods to date and time classes
  • `#ordinal` and `#ordinalize` now support I18n
  • Add queue name support to ActiveJob::QueueAdapters::QueAdapter
  • Change message on the empty result of searching routes by `rails routes` with `-c` or `-g`
  • Use Base.configurations in QueryCache.cache
  • Add ActiveStorage::Service::DiskService#url_for_direct_upload test
  • Delegate child session assertions to parent session
  • Add delayed preloading for arrays of records
  • Avoid explicit usage `Base.connections` as sub-classes may override
rails questions on Stackoverflow (View All Questions)
  • rails Nested Form Table, Calling Each in View (Only) Returns the Last Record Multiple Times
  • Implement bootstrap file-input in rails for ajax multiple file upload
  • Displaying simple data with Chartkick.js in rails
  • Devise gem in Rails: generate user_root_path
  • Errors when integrating reactive-record with react-rails
  • Search same class in Rails Model
  • How to have thread-safe Rails initializers?
  • How to create non-nested multiple records of the same model using one form in Rails?
  • Best architecture of Rails app with CAS server (user+admin, Devise+CASino)
  • How to start rails server using Otto Hashicorp
  • Rubymine does not detect folder directories in Rails Application
  • Rails app and Android app connected to s3 bucket
  • Issue creating new Rails App
  • Hartl Rails Tutorial listing 11.25 -- CSS for microposts does not update
  • rails nasted model form
  • Line up a form_for button in a bootstrap btn-group in rails
  • Using jquery and ajax to update a partial using Ruby on Rails
  • How to include respond_to when you don't inherit from ApplicationController in Rails 4?
  • How to reverse look up a user from an access_token (Rails, Devise)
  • How do you add JOIN information to a rails seeds.rb file?
  • How to create a form so that an Admin can edit another user? Rails 4
  • Ruby on Rails - Legacy Database Model Associations Gone Awry
  • How to set a background image in rails from css?
  • How to use polymer in rails using bow-rails
  • Calling a module's public instance method from Rails View
  • Best control to let user select from a long list of friends using Rails?
  • Rails 5 beta bundle update has gem conflict
  • Rails Ajax 500 Server Error
  • Rails: Commands don't work inside format.json { .... }
  • Rails asset pipeline serves old manifests
rails list of languages used
Other projects in Ruby