加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 渲染Ruby on Rails后保留params

发布时间:2020-12-16 20:58:24 所属栏目:百科 来源:网络整理
导读:我有一个属于User的项目.在我的用户视图中,我有一个链接来添加一个新项目,其中包含我想要添加项目的用户的参数. %= link_to 'Add new project',:controller = "project",:action = "new",:id = @user %Url: /projects/new?id=62 将项目添加到用户工作.问题是
我有一个属于User的项目.在我的用户视图中,我有一个链接来添加一个新项目,其中包含我想要添加项目的用户的参数.
<%= link_to 'Add new project',:controller => "project",:action => "new",:id => @user %>

Url: /projects/new?id=62

将项目添加到用户工作.问题是在添加新项目时验证失败并且我进行了渲染.

def create

    @project = Project.new(params[:project])

    if @project.save
        redirect_to :action => "show",:id => @project.id
    else
        render :action => "new"
    end

end

视图:

<%= form_for @project do |f| %>

    <%= f.label :name %>
    <%= f.text_field :name %>

    <%= f.hidden_field :user_id,:value => params[:id] %>

    <%= f.submit "Create project" %>
<% end %>

路线

resources :users do
 resources :projects
end

如何在渲染后为用户保留参数?或者有更好的方法来做到这一点?一直在看很多类似的问题,但无法让它发挥作用.

解决方法

尝试
render :action => "new",:id => @project.id

如果它不适合您,则尝试使用其他方法将参数传递给渲染操作.

这也可以帮助你 – >
Rails 3 Render => New with Parameter

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读