我正在制作一个rails应用程序,我有一个链接类(它在标签内)。我希望<%= User.find_by_id(p.user_id).username %>
成为用户的链接,所以我的问题是:
1)如何将其作为指向用户的链接?
2)当我点击我创建的链接时,即在另一个链接中,它会激活外部链接。如何让点击响应内部链接? (在下面的代码中。)
<div class="row">
<a class="fg" href="#<%= p.id %>" data-toggle="modal">
<div class="span6 offset3">
<div class="thumbnail">
<table border="0" width="100%" cellpadding="5px">
<tr>
<td>
<%= image_tag(p.thumbnail, class: "hoi") %>
</td>
<td id="tzt2" width="60%">
<div id="withJosefin">
<%= p.title %>
</div>
<div id="withLibre">
by <%= User.find_by_id(p.user_id).username %> <%= time_ago_in_words(p.created_at) %> ago
</div>
</td>
</tr>
</table>
</div>
</div>
</a>
</div>
答案 0 :(得分:3)
您可以使用以下语法创建链接:
<% user = User.find_by_id(p.user_id) %>
<%= link_to user.username, user %>
相当于:
<%= link_to p.user.username, user_path(p.user) %>
顺便问一下,为什么要手动加载用户?如果你的关联设置正确,你可以写:
<%= link_to p.user.username, p.user %>
我不确定我理解你的第二个问题。如果你能更清楚地解释一下,我会编辑我的答案。
答案 1 :(得分:0)
你无法嵌套超链接。 您可以使用一些JavaScript来模拟嵌套超链接的效果,或者更好的解决方案是重新组织您的标记,使其成为有效的标记。即你的第一个标签不应包含div等。