ruby on rails - Form_for method to another controller -
i have 2 controllers. pages , tasks. , in views/pages want create form tasks controller , new action.
i tried this:
<%= form_for @task, url: url_for(controller: 'tasks', action: 'new') |f| %> <%= f.text_field :content %> <%= f.submit "add" %> <% end %> but error in browser:
first argument in form cannot contain nil or empty:
this how tasks controller's new method:
def new @task = task.new @task.done = false if @task.update_attributes(task_params) redirect_to root_path, notice: "success" else redirect_to root_path, notice: "error" end end of course of study there isn't @task variable in pages/new. how tell rails variable in tasks controller?
your @task nil. should initialise in action view rendering or else utilize form_for task. should work. hope helps
ruby-on-rails ruby-on-rails-4
No comments:
Post a Comment