accepts_nested_attributes: undefined method 'association'_attributes

21 views
Skip to first unread message

Javix

unread,
Mar 4, 2013, 4:21:36 PM3/4/13
to rubyonra...@googlegroups.com
I have 2 models Timesheet and TimeEntry:

class Timesheet < ActiveRecord::Base
  attr_accessible :status, :user_id, :time_entries_attributes
  has_many :time_entries, dependent: :destroy
  accepts_nested_attributes_for :time_entries, :reject_if => proc { |attributes| attributes['worktime'].blank? }
end

class TimeEntry < ActiveRecord::Base
  attr_accessible :task_id, :timesheet_id, :workdate, :worktime    
  belongs_to :timesheet
end

As explained in Rails API:

```
Using with attr_accessible

The use of attr_accessible can interfere with nested attributes if you’re not careful. For example, if the Member model above was using attr_accessible like this:

attr_accessible :name
You would need to modify it to look like this:

attr_accessible :name, :posts_attributes
```
If I try to do the same for my case with time_entries association:
```
irb(main):016:0> t = Timesheet.new
=> #<Timesheet id: nil, user_id: nil, status: nil, created_at: nil, updated_at: nil>
irb(main):017:0> t.time_entries_attributes
NoMethodError: undefined method `time_entries_attributes' for #<Timesheet:0x007fa8aee56e98>
```
It does not work. Any idea?

Thanks and regards

Lorenz Blackbird

unread,
Mar 5, 2013, 7:07:13 AM3/5/13
to rubyonra...@googlegroups.com
I'm not sure, but I think that you must use "build" method to create a
TimeEntry associated to TimeSheet.

--
Posted via http://www.ruby-forum.com/.

Javix

unread,
Mar 5, 2013, 7:25:38 AM3/5/13
to rubyonra...@googlegroups.com


On Tuesday, March 5, 2013 1:07:13 PM UTC+1, Ruby-Forum.com User wrote:
I'm not sure, but I think that you must use "build" method to create a
TimeEntry associated to TimeSheet.

Sorry , but the question was not about how to create time_entries association but how to receive the association attributes. I believed that calling timesheet.time_entries_attributes will do that.

Regards
Posted via http://www.ruby-forum.com/.
Reply all
Reply to author
Forward
0 new messages