2017-05-22 8 views
0

Railsでto_sentenceを使用してlink_toを使用する際にいくつか問題があります。to_sentenceでlink_toを使用するとエラーが発生する

このコード行を使用すると、html出力が間違っています。

<%= @story.collections.map{ |u| link_to(u.name, collection_path(u)).html_safe }.to_sentence %> 

このコードは、ページ上のテキストではなくリンク

<a href="/collections/One">One</a>, <a href="/collections/Two">Two</a>, and <a href="/collections/Three">Three</a> 

としてレンダリングされる。これは私が

OneTwo代わりに欲しいものである、とThree

すべてのヘルプはありますありがとう、ありがとう!

+0

ちょっとおかげけど私は "と"の部分が必要です。これは私に "One、Two、Three"を与えます。私は "One、Two、Three"が必要です。 –

答えて

0

このようなヘルパーメソッドとして使用safe join:ヘルパーで

:ビューで

def story_links(story) 
    links = @story.collections.map{ |u| link_to(u.name, collection_path(u)).html_safe } 
    safe_join(links, ',') 
end 

:このため

<%= story_links(@story) %> 
がto_sentence
+0

後.html_safeを移動 – Joshua

+0

'safe_join(links、 '、')'の代わりに 'links.to_sentence'だけするのでしょうか? –

関連する問題