Rails 7 adds support for deferrable foreign key constraints in PostgreSQLBy default, foreign key constraints in PostgreSQL are checked after each statement. This works for most use cases but becomes a major limitation when creating related records before the parent record is inserted into the database.
Rails 7 adds optional transaction arguments to with_lockWith Rails 7 we can pass transaction arguments like isolation, joinable, etc directly to with_lock
Rails 7: Action Text: forward form: option to hidden inputAdd support for accessing the form as a property of the
Rails 7 adds support for setting the schema dump filepath in the database configSchema dumps can now be toggled and dump filepaths can be set for individual database shards.
Rails 7 allows permitting numeric paramsRails 7 eliminates the issue of permitting nested hash. Now required attributes can be permitted by calling the permit method directly on the parent hash.
Rails 7 raise ActionController::Redirecting::UnsafeRedirectError for unsafe redirectsNow unsafe redirects raise a UnsafeRedirectError instead of an ArgumentError.
Rails 7 adds accepts_nested_attributes_for support for delegated_typeWith Rails 7, accepts_nested_attributes_for can be used for delegated_type
Rails 7 now allows automatic inverse_of detection for associations with scopesThis update ensures that "inverse_of" takes into consideration the relevant scope when calculating the object to store in memory.
Rails 7 now introduces support for generated columns with PostgresRails 7 now adds support for generated (virtual) columns to the PostgreSQL adapter that has been available since PSQL v12.
Rails 7 renders accurate plain text output for nested fieldsPlain text rendering of nested fields now reserves indentation.