我需要在创建函数中使用新函数中的params [:number],我该如何去做这件事?Ruby on Rails:如何在控制器功能之间传递变量?
def new
@test_suite_run = TestSuiteRun.new
@tests = Test.find(:all, :conditions => { :test_suite_id => params[:number] })
end
def create
@test_suite_run = TestSuiteRun.new(params[:test_suite_run])
@tests = Test.find(:all, :conditions => { :test_suite_id => //I need the same params[:number] here})
end
编辑:我想我很困惑,因为新和创建之间的差异然后。我将参数:数字传递给新的。
new_test_suite_run_path(:number => ts.id)
我,然后用它来生成表单。我不明白在创建函数中要做什么。如果我删除了控制器中的创建功能,当我以新的方式提交表单时,它给了我一个错误,指出控制器中没有创建操作。这是否意味着我必须将所有内容都移动到创建函数中?这怎么可能,我必须创建一个create.html.erb并移动我所有的表单信息?
似乎违反直觉的同时拥有一个'new'和'create'功能:/好像你就需要在原有的'经过:number'参数成函数都来自同一个地方 – reagan 2012-07-10 01:16:24
你使用新的和创建方法是非常规的。你能告诉我们你想完成什么吗?也许我们可以建议一种做你想做的事的方式,而不是采用非常规的方式。 – 2012-07-10 01:16:53