Class: ActiveRecord::Fixture
- Includes:
- Enumerable
- Defined in:
- activerecord/lib/active_record/fixtures.rb
Overview
:nodoc:
Defined Under Namespace
Classes: FixtureError, FormatError
Instance Attribute Summary collapse
-
#fixture ⇒ Object
(also: #to_hash)
readonly
Returns the value of attribute fixture.
-
#model_class ⇒ Object
readonly
Returns the value of attribute model_class.
Instance Method Summary collapse
- #[](key) ⇒ Object
- #class_name ⇒ Object
- #each(&block) ⇒ Object
- #find ⇒ Object
-
#initialize(fixture, model_class) ⇒ Fixture
constructor
A new instance of Fixture.
Methods included from Enumerable
Constructor Details
#initialize(fixture, model_class) ⇒ Fixture
Returns a new instance of Fixture.
750 751 752 753 |
# File 'activerecord/lib/active_record/fixtures.rb', line 750 def initialize(fixture, model_class) @fixture = fixture @model_class = model_class end |
Instance Attribute Details
#fixture ⇒ Object (readonly) Also known as: to_hash
Returns the value of attribute fixture
748 749 750 |
# File 'activerecord/lib/active_record/fixtures.rb', line 748 def fixture @fixture end |
#model_class ⇒ Object (readonly)
Returns the value of attribute model_class
748 749 750 |
# File 'activerecord/lib/active_record/fixtures.rb', line 748 def model_class @model_class end |
Instance Method Details
#[](key) ⇒ Object
763 764 765 |
# File 'activerecord/lib/active_record/fixtures.rb', line 763 def [](key) fixture[key] end |
#class_name ⇒ Object
755 756 757 |
# File 'activerecord/lib/active_record/fixtures.rb', line 755 def class_name model_class.name if model_class end |
#each(&block) ⇒ Object
759 760 761 |
# File 'activerecord/lib/active_record/fixtures.rb', line 759 def each(&block) fixture.each(&block) end |
#find ⇒ Object
769 770 771 772 773 774 775 776 777 778 |
# File 'activerecord/lib/active_record/fixtures.rb', line 769 def find raise FixtureClassNotFound, "No class attached to find." unless model_class object = model_class.unscoped do pk_clauses = fixture.slice(*Array(model_class.primary_key)) model_class.find_by!(pk_clauses) end # Fixtures can't be eagerly loaded object.instance_variable_set(:@strict_loading, false) object end |