/usr/lib/ruby/vendor_ruby/active_record/associations/builder/singular_association.rb is in ruby-activerecord-3.2 3.2.16-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | module ActiveRecord::Associations::Builder
class SingularAssociation < Association #:nodoc:
self.valid_options += [:remote, :dependent, :counter_cache, :primary_key, :inverse_of]
def constructable?
true
end
def define_accessors
super
define_constructors if constructable?
end
private
def define_constructors
name = self.name
mixin.redefine_method("build_#{name}") do |*params, &block|
association(name).build(*params, &block)
end
mixin.redefine_method("create_#{name}") do |*params, &block|
association(name).create(*params, &block)
end
mixin.redefine_method("create_#{name}!") do |*params, &block|
association(name).create!(*params, &block)
end
end
end
end
|