aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/associations/has_one_associations_test.rb
Commit message (Collapse)AuthorAgeFilesLines
* Raise `ArgumentError` when `has_one` is used with `counter_cache`Godfrey Chan2013-11-291-0/+8
| | | | | | | | | Previously, the `has_one` macro incorrectly accepts the `counter_cache` option due to a bug, although that options was never supported nor functional on `has_one` and `has_one ... through` relationships. It now correctly raises an `ArgumentError` when passed that option. For reference, this bug was introduced in 52f8e4b9.
* Fix test name [ci skip]Carlos Antonio da Silva2013-11-141-1/+1
|
* Fixes problem with replacing has_one association record with itselfDenis Redozubov2013-11-111-2/+16
|
* Save association when primary key is manually setlaurocaetano2013-10-241-0/+11
|
* Avoid empty transaction from setting has_one association on new record.Dylan Thacker-Smith2013-09-111-0/+2
|
* Dropped deprecated option `:restrict` for `:dependent` in associationsNeeraj Singh2013-07-031-16/+0
|
* Fix #8856 Ensure has_one association=(associate) triggers save.Chris Thompson2013-04-301-0/+16
| | | | | | | | | | | | | | | | | | | | | | | activerecord/lib/active_record/associations.rb states: # [association=(associate)] # Assigns the associate object, extracts the primary key, sets it as the foreign key, # and saves the associate object. Since commit 42dd5d9f2976677a4bf22347f2dde1a8135dfbb4 to fix #7191, this is no longer the case if the associate has changed, but is the same object. For example: # Pirate has_one :ship pirate = Pirate.create!(catchphrase: "A Pirate") ship = pirate.build_ship(name: 'old name') ship.save! ship.name = 'new name' pirate.ship = ship That last line should trigger a save. Although we are not changing the association, the associate (ship) has changed.
* Revert "Merge pull request #8989 from robertomiranda/use-rails-4-find-by"Guillermo Iguaran2013-01-181-2/+2
| | | | | This reverts commit 637a7d9d357a0f3f725b0548282ca8c5e7d4af4a, reversing changes made to 5937bd02dee112646469848d7fe8a8bfcef5b4c1.
* User Rails 4 find_byrobertomiranda2013-01-181-2/+2
|
* User assert_kind_of, invert assert_equal expectationsCarlos Antonio da Silva2012-11-291-3/+3
|
* Added STI support to init and building associationsJason Rush2012-11-291-0/+30
| | | | | | | | Allows you to do BaseClass.new(:type => "SubClass") as well as parent.children.build(:type => "SubClass") or parent.build_child to initialize an STI subclass. Ensures that the class name is a valid class and that it is in the ancestors of the super class that the association is expecting.
* Do not create useless database transaction when building `has_one` association.Bogdan Gusiev2012-11-101-0/+6
|
* Remove mass_assignment_options from ActiveRecordGuillermo Iguaran2012-09-161-16/+0
|
* Remove mass assignment security from ActiveRecordGuillermo Iguaran2012-09-161-16/+0
|
* Remove the dependent_restrict_raises option.Jon Leighton2012-08-101-43/+13
| | | | | | | | | | | | | | | It's not really a good idea to have this as a global config option. We should allow people to specify the behaviour per association. There will now be two new values: * :dependent => :restrict_with_exception implements the current behaviour of :restrict. :restrict itself is deprecated in favour of :restrict_with_exception. * :dependent => :restrict_with_error implements the new behaviour - it adds an error to the owner if there are dependent records present See #4727 for the original discussion of this.
* Fix #7191. Remove unnecessary transaction when assigning has_one associations.kennyj2012-08-081-0/+13
|
* s/scoped/scope/Jon Leighton2012-08-011-1/+1
|
* Deprecate ActiveRecord::Base.scoped.Jon Leighton2012-07-271-4/+4
| | | | | | | It doesn't serve much purpose now that ActiveRecord::Base.all returns a Relation. The code is moved to active_record_deprecated_finders.
* ActiveRecord::Base.all returns a Relation.Jon Leighton2012-07-271-1/+1
| | | | | | | | | | | Previously it returned an Array. If you want an array, call e.g. `Post.to_a` rather than `Post.all`. This is more explicit. In most cases this should not break existing code, since Relations use method_missing to delegate unknown methods to #to_a anyway.
* remove deprecated callsJon Leighton2012-04-271-3/+3
|
* find and replace deprecated keysJon Leighton2012-04-271-1/+1
|
* %s/find(:\(first\|last\|all\), \([^()]*\))/scoped(\2).\1/gcI amongst other ↵Jon Leighton2012-04-271-1/+1
| | | | things
* remove calls to find(:first), find(:last) and find(:all)Jon Leighton2012-04-261-2/+2
|
* Fix #5069 - Protect foreign key from mass assignment throught association ↵Jean Boussier2012-03-051-0/+16
| | | | builder
* Fix typoRafael Mendonça França2012-02-011-2/+2
|
* Use human attribute name to show the dependent destroy messageRafael Mendonça França2012-02-011-1/+25
|
* fix has_one, has_many restrict error messageManoj2012-02-011-1/+1
|
* Remove deprecation warnings from testsRafael Mendonça França2012-01-311-6/+12
|
* suggested fixes for :dependent => :restrict deprecation.Manoj2012-01-311-16/+5
|
* has_many/has_one, :dependent => :restrict, deprecation added.Manoj2012-01-291-2/+46
|
* Only call set_owner_attributes for has_one association if target exists.Dieter Komendera2011-07-041-0/+11
|
* Assign the association attributes to the associated record before the ↵Jon Leighton2011-06-301-0/+7
| | | | before_initialize callback of the record runs. Fixes #1842.
* please use ruby -I lib:test path/to/test.rb, or export RUBY_OPTAaron Patterson2011-06-061-1/+1
|
* Refactor Active Record test connection setup. Please see the ↵Jon Leighton2011-06-041-1/+1
| | | | RUNNING_UNIT_TESTS file for details, but essentially you can now configure things in test/config.yml. You can also run tests directly via the command line, e.g. ruby path/to/test.rb (no rake needed, uses default db connection from test/config.yml). This will help us fix the CI by enabling us to isolate the different Rails versions to different databases.
* removed deprecated methods, and related tests, from ActiveRecordJosh Kalderimis2011-05-251-9/+0
|
* Add block setting of attributes to singular associationsAndrew White2011-05-171-0/+21
|
* Pass the attribute and option hashes to build_associationAndrew White2011-05-171-0/+16
| | | | | | | The build_association method was added as an API for plugins to hook into in 1398db0. This commit restores this API and the ability to override class.new to return a subclass based on a virtual attribute in the attributes hash.
* Don't use mass-assignment protection when setting foreign keys or ↵Jon Leighton2011-05-121-0/+33
| | | | association conditions on singular associations. Fixes #481 (again).
* Don't remove the target if it has already been destroyedAndrew White2011-05-111-0/+9
|
* Bring back obj.association_loaded? as a deprecated method. Fixes #472.Jon Leighton2011-05-111-0/+9
|
* Deprecated support for passing hashes and relations to default_scope, in ↵Jon Leighton2011-04-121-7/+7
| | | | favour of defining a 'default_scope' class method in the model. See the CHANGELOG for more details.
* Split AssociationProxy into an Association class (and subclasses) which ↵Jon Leighton2011-02-181-7/+2
| | | | manages the association, and a CollectionProxy class which is *only* a proxy. Singular associations no longer have a proxy. See CHANGELOG for more.
* Add interpolation of association conditions back in, in the form of proc { ↵Jon Leighton2011-02-141-0/+8
| | | | ... } rather than instance_eval-ing strings
* We shouldn't be using scoped.scoping { ... } to build associated records, as ↵Jon Leighton2011-01-301-0/+15
| | | | this can affect validations/callbacks/etc inside the record itself [#6252 state:resolved]
* Support for create_association! for has_one associationsJon Leighton2011-01-111-0/+18
|
* When assigning a has_one, if anything fails, the assignment should be rolled ↵Jon Leighton2011-01-111-2/+5
| | | | back entirely
* When assigning a has_one, if the new record fails to save, raise an errorJon Leighton2011-01-111-14/+14
|
* When assigning a has_one, if the existing record fails to be removed from ↵Jon Leighton2011-01-111-0/+12
| | | | the association, raise an error
* has_one should always remove the old record (properly), even if not saving ↵Jon Leighton2011-01-111-10/+25
| | | | the new record, so we don't get the database into a pickle
* Construct an actual ActiveRecord::Relation object for the association scope, ↵Jon Leighton2011-01-071-8/+0
| | | | rather than a hash which is passed to apply_finder_options. This allows more flexibility in how the scope is created, for example because scope.where(a, b) and scope.where(a).where(b) mean different things.