Wes wrote: > Try this: > > class ObjectivesController < ApplicationController > before_filter :require_user > layout false > def create > objective = current_user.objectives.create(params[:objective]) > end > end
No! Create shouldn't be a controller method. > > And as others have said, don't overwrite over*ride* > AR class methods like > 'create', otherwise you will enter a world of pain. Yeah. If you must override, it's probably best to do something like def create(attributes, user_id) super(attributes.merge :user_id => user_id) end but even this is kind of bad. > > Also, you are deleting a param called 'freq_options', if the model > does not need it then it shouldn't be in the hash. If the controller > needs it, then pass it as params[:freq_options] rather than params > [:objective][:freq_options]. If it's not used there, then why pass it > at all? Good catch! > > -- W Best, -- Marnen Laibow-Koser http://www.marnen.org [email protected] -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

