我在Rails中有这个链接:
<%= link_to "Add to Journal", add_post_journal_path(post), :method => :put %>
但是,我希望转换此链接以显示包含我要选择的内容的内容的fancybox。首先,我使用此代码:
<%= link_to "fancy", "#add_post", :class=>"fancybox" %>
但我有错误,因为我想将实际帖子传递给fancybox,所以我使用的是这段代码:add_post.html.erb
:
<h1>Escolha o Jornal que deseja adicionar:</h1>
<ul>
<% current_user.journals.each do |journal| %>
<li><%= link_to journal.name,add_post_complete_journal_path(journal),:remote=>true %> </li>
<% end %>
</ul>
我的控制器是:
def add_post
@journal_post = JournalsPosts.new
session[:post_add] = params[:id]
end
def add_post_complete
@journal_post = JournalsPosts.create(:post_id => session[:post_add],:journal_id => params[:id])
respond_with @journal_post
end
如何转换此代码以在我的fancybox中使用我的内容?
答案 0 :(得分:3)
添加你的行动add_post下一个用js回复:
def add_post
@journal_post = JournalsPosts.new
session[:post_add] = params[:id]
respond_to do |format|
format.js
end
end
使用下一个内容添加您的观看add_post.js.erb
上的文件:
$.fancybox('<%= escape_javascript(render(:partial => 'path_to/add_post'))%>',
{
openEffect: "fade",
closeEffect: "fade",
autoSize: true,
minWidth: 480,
scrolling: 'auto',
});
例如,您在视图中添加了部分_add_post.html.erb
。现在在这部分内部,您可以编写代码视图:
#code for your view inside partial `add_post.html.erb`
<%= @journal_post %>
<h1>Escolha o Jornal que deseja adicionar:</h1>
<ul>
.
.
问候!