-3

これをviewsフォルダーのapplication.html.erbに書き込みました。

<p>List of all post IDs: <%= Post.all.each {|i| print i.id } %></p>

各投稿のpost.idだけを出力したいのですが。しかし、代わりにそれはこれを示しています

List of all post IDs: [#<Post id: 1, title: "Our First Post", content: "Content for our first post", created_at: "2012-11-24 11:22:02", updated_at: "2012-11-26 17:40:54", user_id: 1>, #<Post id: 3, title: "Our Second Post", content: "Content for our second post", created_at: "2012-11-24 11:51:32", updated_at: "2012-11-26 17:41:33", user_id: 2>, #<Post id: 8, title: "Our Second Post", content: "Content of Our mandatory Second Post", created_at: "2012-11-24 19:42:02", updated_at: "2012-11-27 20:46:57", user_id: 1>, #<Post id: 10, title: "C Post", content: "Hi I'm Cee nice to meet you", created_at: "2012-11-26 17:51:20", updated_at: "2012-11-26 17:51:20", user_id: 3>, #<Post id: 20, title: "11", content: "11", created_at: "2012-11-27 19:58:48", updated_at: "2012-11-27 19:58:48", user_id: 4>, #<Post id: 21, title: "22", content: "22", created_at: "2012-11-27 19:58:53", updated_at: "2012-11-27 19:58:53", user_id: 4>, #<Post id: 25, title: "I'm Super Singha!", content: "Yessar!!!", created_at: "2012-11-27 20:45:07", updated_at: "2012-11-27 20:45:07", user_id: 6>, #<Post id: 26, title: "Should this be a blog or a forums or a whatever-wha...", content: ";asljdfi;asfi;asdf;lasbfurbofioboboeifhosdsdbvisbvw...", created_at: "2012-11-27 20:46:28", updated_at: "2012-12-02 14:17:14", user_id: 1>, #<Post id: 27, title: "Hullow", content: "Yoyoyo", created_at: "2012-11-30 07:35:38", updated_at: "2012-11-30 07:35:54", user_id: 6>, #<Post id: 649, title: "um", content: "hey", created_at: "2012-11-30 12:20:58", updated_at: "2012-11-30 12:20:58", user_id: 2>, #<Post id: 82692, title: "LALALALAL", content: "hiopsdahfiosadhfioahfio", created_at: "2012-12-02 13:59:04", updated_at: "2012-12-02 14:22:41", user_id: 2>, #<Post id: 82693, title: "ggg", content: "fff", created_at: "2012-12-02 14:29:42", updated_at: "2012-12-02 14:29:42", user_id: 2>, #<Post id: 82694, title: "sick", content: "sick", created_at: "2012-12-02 14:41:32", updated_at: "2012-12-02 14:41:32", user_id: 5>]

puts代わりにprint、それも機能しないことを試しました。

さらに:意図した結果から各投稿ショーページへのlink_toを作成したいのですが、どうすればそれを達成できますか?

これが私のリポジトリです:https ://github.com/nixor/cpblog 、ここがherokuサイトです:http ://still-plains-5469.herokuapp.com/

ありがとう。

4

2 に答える 2

0
<p>List of all post IDs: 
</p>
<%= Post.all.each do |e| %>
  <p>
    <%= e.Id %>
  <p>
  <%= link_to "Show", e %> 
<% end %>
于 2012-12-02T15:52:34.773 に答える
0

問題は、ここでERBタグをどのように使用しているかにあります。

<%= Post.all.each {|i| print i.id } %>

を使用するたび<%=に、ブロックの結果がレンダリングされます。あなたの場合、Post.all.each {}は配列オブジェクトを返します。これは、レンダリングされたHTMLに表示されているものとまったく同じです。

各アイテムを印刷するには、を使用してアイテムをループしてから、を使用して必要な<%ものを印刷する必要があります<%=

<p>List of all post IDs: 
  <% Post.all.each |post| do %>
    <%= link_to post.id, post_path(post) %>
  <% end %>
</p>
于 2012-12-02T16:04:34.077 に答える