避免在编辑路径帮助器中硬编码资源名称



我希望你们不要介意我用三段论来问这个问题…

<%= link_to "Show", thing_path(@thing.id) %>

<%= link_to "Show", @thing %>

<%= link_to "Show", edit_thing_path(@thing.id) %>

是??

我想使用编辑路径帮助器,而不需要硬编码资源名,这样我就可以将这段代码抽象为部分。

<%= link_to "Edit", edit_polymorphic_path(@thing) %>

,

您最好使用多态路径,如下所述。

不同之处在于,当您向link_to helper发送单个对象时,它能够根据对象的model_name消化路径。这是好的show方法…那么edit呢?

Edit有自己的路径——你必须在helper中显式地定义它;因此,我建议您不能只调用object来生成路径。相反,polymorphic_path帮助器将根据您发送的对象(

)帮助您加载正确的编辑路径。

相关内容

  • 没有找到相关文章

最新更新