簡體   English   中英

在link_to之間傳遞參數並渲染局部

[英]Passing params between link_to and render partial

我正在使用link_to渲染局部圖像(例如,單擊link_to時將呈現局部圖像),如圖所示。 我想將參數u.id傳遞給partial,但是我沒有成功:(我做錯了什么?我很絕望。

編輯:終於讓它工作了。 這是我的代碼:

在我看來,users / show.html.erb-“ u”是集合中的每個實用程序

<% @utilities.each do |u| %>
    <%= link_to u.name, { :controller => :users, :action => :show, :util_id => u.id }, :remote => true %>
<% end %>

在我的用戶#show控制器方法末尾

    respond_to do |format|
        format.html {
            redirect_to @current_user and return
        }
        format.json {
            redirect_to @current_user.json and return
        }
        format.js {
          @util_id = params[:util_id]
          redirect_to @current_user and return
        }
    end

Show.js.erb:

$("#editUtil").prepend('<%= escape_javascript(raw render :partial => "utilEdit", :locals => {:util => params[:util_id]} ).html_safe%>');

我的部分:_utilEdit.html.erb

TEST: <%= Utility.find(util).name %>

謝謝大家的幫助!!

<%= link_to u.name, '/users/show', :util_id => u.id, :remote => true %>

使用link_to這種格式:util_id轉到html_options,因此您得到的HTML像

<a href="/users/show" util_id="1" data-remote="true">...

但是你需要像

<a href="/users/show?util_id=1" data-remote="true">...

嘗試使用命名路徑或{ :controller, :action, :params }構造

<%= link_to u.name, show_users_path(:util_id => u.id), :remote => true %>

要么

<%= link_to u.name, { :controller => :users, :action => :show, :util_id => u.id }, :remote => true %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM