ruby-on-rails - rails : Pass parameters with render :action?

标签 ruby-on-rails parameters render

我有一个表单,根据调用它的参数而有所不同。

前任。

testsite.local/users/new?type=client

所以如果 typeab ,表单将显示不同的字段。

我的问题是表单填写不正确,因为如果无法正确保存用户,它会使用默认错误消息呈现表单,但也没有我的参数。
testsite.local/users/new

如何调用我的render操作并将此参数设置为的任何内容传递给它?这样我仍然可以保留我的内置错误消息,说明为什么无法正确提交表格并且表格是否正确?

这是我的create行动:
def create
   @user = User.new(params[:user])
   roles = params[:user][:assigned_roles]
   if @user.save
     update_user_roles(@user,roles)
     if current_user.is_admin_or_root?
       flash[:message] = "User \"#{@user.username}\" created."
       redirect_to users_path
     else
       flash[:message] = "Congrats! You're now registered!"
       redirect_to app_path
     end
   else
     render :action => 'new'
   end
 end

最佳答案

正如另一位用户回答我的其他 related question 所阐明的那样,这就是我所追求的:

form_for @user, :url => { :action => :create, :type => @type }

...保留参数:type通过每个新的渲染操作(假设我在 Controller 中正确定义了它)。

关于ruby-on-rails - rails : Pass parameters with render :action?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1549055/

相关文章:

html - 有条件地渲染 .hbs 模板 emberjs

text - 如何使用 Java2D 使旋转文本看起来不错

ruby-on-rails - 未定义的 'map'方法,用于nil :NilClass

ruby-on-rails - 路由到/public中的静态html页面

ruby-on-rails - activerecord-2.3.14 与 ruby​​ 1.9.2::undefined 方法 `reject' 中断 "4":String

c# - 按 ref 或按值 (C#) 传递方法参数的一般简短指南?

java - Jtwig获取参数显示

javascript - Rails 4.2 在 js.erb 中渲染数组导致崩溃

ruby-on-rails - Twitter Bootstrap 模式窗口中显示的 Ruby 错误

postgresql - postgresql 中存储过程参数的命名约定