我有用户可以推荐其他用户'配置文件(不要担心模型和关联,它们工作正常),我可以通过在控制台中使用current_user.profile.recommended_by来查看哪些用户推荐了current_user的配置文件。我想要做的是创建一个"链接" (无处可去)当我点击它时会显示一个弹出窗口,其中显示推荐current_user的每个人的姓名以及指向每个推荐者的个人资料页面的链接。
我有一个popover功能(来自Twitter Bootstrap),可以正常使用静态内容
profile.html.erb
......
Recommended by <%= link_to "#{current_user.profile.recommended_by.count} users", "#", id: "example", datacontainer: "body", datatoggle:"popover", dataplacement:"right", title: "static stuff" %>
.......
我认为我想要的是将动态数组传递给&#34;标题:&#34;?我不知道该怎么做。
profile.html.erb
...........
<% current_user.profile.recommended_by.each do |r| %>
<% r.first_name => array1 %>
<% r.last_name => array1%>
<% end %>
Recommended by <%= link_to "#{current_user.profile.recommended_by.count} users", "#", id: "example", datacontainer: "body", datatoggle:"popover", dataplacement:"right", title: :array1 %>
.......................
你可能会说,我是Ruby on Rails&amp;的新手。网络开发,任何帮助将不胜感激!
更新
我想出了如何传递数组:
PagesController
def page
@recusers = current_user.profile.recommended_by
@recnames = @recusers.collect do |recuser|
recuser.first_name + " "+ recuser.last_name[0]
end
end
当我将@recnames传递给&#34;标题:&#34;它显示我想要的名称!但是如何将其链接到每个的个人资料页面?
答案 0 :(得分:0)
比我想象的更简单:
profile.html.erb
................
Recommended by <%= link_to "#{current_user.profile.recommended_by.count} users", "#", id: "example", datacontainer: "body", datatoggle:"popover", dataplacement:"right", "data-content" => "#{@recnames.map{|a, b| link_to a, profile_path(b)}.join(', ')}" %>
...............
PagesController
def den
@recusers = current_user.profile.recommended_by
@recnames = @recusers.collect do |recuser|
[recuser.first_name + " "+ recuser.last_name[0], recuser.profile]
end
end