Этот ответ больше похож на комментарий, но его так сложно понять, о чем идет речь, поэтому я решил получить это как ответ.
Давай, Фернандо, как мы можем узнать, что вы пытаетесь сделать? Каким действиям должна быть представлена форма? Можете ли вы показать нам свои маршруты.rb, чтобы мы знали, как форма действия может подчиняться действию вашего контроллера. Возможно, чтобы избежать проблем с соглашениями об именах в рельсах, вы должны переименовать свою модель и контроллер Action
в нечто вроде Mission
или Activity
.
Каким должен быть ваш params
Хеш? Потому что всегда будут параметры [: action], которые в случае формы обычно равны create
или update
.
Далее, пожалуйста, попробуйте использовать встроенные методы рельсы, как:
# should be a POST method (am I right?)
# why do you call it viewTask?
def viewTask
@task = Task.find(params[:id])
# you'd better avoid extra DB-calls
# @status = @task.status
# @activities = @task.actions
# you can load this with the @task-query by including or joining them
# if you need the @status and @activities models you could do
# @task = Task.find(params[:id], :include => [:task, :activities])
# if you only need the joined objects you should use
@task = Task.find(params[:id], :joins => [:task, :activities])
@activity = Activity.new
if params[:activity]
@activity = @task.activities.build(params[:activity])
@activity.save
end
end
В коде, я предполагаю, что вы модель задачи выглядит следующим образом:
class Task < ActiveRecord::Base
has_many :activities
belongs_to :status # so it has a field called :status_id
.....
end
Извините, у меня возникли проблемы с пониманием: Как сохранить для модели Action, когда при попытке сохранить в контроллере параметры [: action] являются токенами контроллера действий. –
Я не понимаю ваш вопрос , – iblue
Как я могу сохранить для модели Action, один раз, когда я пытаюсь сохранить в контроллере, параметры [: action] уже являются токенами контроллера действий. –