【发布时间】:2020-10-21 10:56:06
【问题描述】:
在我的通知模型中,我有一个名为 'link_path' 的字段,它会输出如下内容:
national_races/36/?notification_id=
当我遍历这些通知时,我试图将通知 ID 附加到链接路径的末尾。
<% @x.each do |notify| %>
<% @a = notify.id %>
<%= link_to notify.link_path + @a do %>
希望最终得到类似的结果:
national_races/36/?notification_id=44
其中 44 可能是通知 ID。但我只是不断得到:
nil:NilClass 的未定义方法 `+'。
似乎我无法将一些字符串连接到我的 rails 路线的末尾?我该怎么办?
notify.link_path 本身可以正常工作,但无法将此 id 传递到 url 末尾
【问题讨论】:
-
能否展示模型和控制器的相关代码?你的路由文件是什么样的?
-
你能展示你想要实现的最终 HTML 吗?
-
我建议你关闭这个;它与您的其他链接问题直接相关,我认为您现在已经得到了一个有效的答案(并且该问题具有您问题的所有上下文/代码)。虽然我会说
NilClass错误可能是因为并非所有notify对象都有link_path集。 -
ok 将关闭这个
-
绝对应该使用路由定义创建链接,而不是模型中的方法。这样你就可以做类似
link_to 'some text', notification_path(@a)
标签: ruby-on-rails ruby routes