0

これは URL リンク付きの写真の Ruby スクリプトです。

<%= if property.images[0] then
      link_to image_tag (property.images[0].image.url('350x263', :jpg)),                
      user_property_image_path(user, :id => property.images[0], :property_id => property),   

    end -%>

写真を表示せずにURLリンクのみを表示するスクリプトの部分は? 私はこれを試しましたが、うまくいきません:

<%= user_property_image_path(user, :id => property.images[0], :property_id => property), 

end -%>
4

3 に答える 3

0

これ:

<% if property.images[0] %>
  <%= link_to user_property_image_path(user, :id => property.images[0], :property_id => property) do %>
    <%= image_tag (property.images[0].image.url('350x263', :jpg)) %>
  <% end %>
<% end %>

最初の例と同じ結果が得られます。HTML アンカー タグには、テキストまたは img タグなどの HTML タグのいずれかの内部コンテンツが必要です。したがって、アンカー タグをレンダリングする link_to メソッドは、内部テキストを最初の引数として受け取るか、上記の例のように内部コンテンツをブロックに挿入できます。これは、リンク可能と見なされるコンテンツが何らかの形でより複雑な場合に役立ちます。 .

要約すると、リンクをレンダリングすることしかできません。このリンクにコンテンツを追加する必要があります。

于 2012-10-12T07:54:45.670 に答える
0

これにより、 LINK TEXT HEREのリンク テキストとともに表示されます。

<%= if property.images[0] then
      link_to 'LINK TEXT HERE',                
      user_property_image_path(user, :id => property.images[0], :property_id => property)    
    end -%>

URL をリンク テキストとして使用する場合は、次を試してください。

<% url = user_property_image_path(user, :id => property.images[0], :property_id => property) %>
<%= link_to( url, url ) if property.images[0] -%>
于 2012-10-12T03:37:24.760 に答える
0

これは、リンクをレンダリングするだけです (画像なしで、URL を重複して 2 回指定することもありません)。

<%= link_to( nil, user_property_image_path(user,
                                           :id => property.images[0],
                                           :property_id => property)) -%>

(最初の引数として nil を渡すと、生成された URL がリンクされるだけです。

于 2012-10-12T08:57:31.233 に答える