2015-04-08 60 views
0

我在rails教程中使用ruby教程來構建使用數據庫表的簡單應用程序,出於某種原因,我的主頁輸出超出了應有的範圍。它創建這個數組,看起來像使用提示進行數據庫查詢並將其放在頁面上。我很確定問題出在我的index.html.erb文件(如果我清空文件並重新加載奇怪的內容不存在),但我無法弄清楚發生了什麼。 Here是發生了什麼的截圖。索引輸出不在.html.erb文件中的內容

controller code: 
class BooksController < ApplicationController 
    def new 
    @page_title = 'Add Book' 
    @book = Book.new 
    @category = Category.new 
    @author = Author.new 
    @publisher = Publisher.new 
    end 

    def create 
    @book = Book.new(book_params) 
    @book.save 

    redirect_to books_path 
    end 

    def update 
    end 

    def edit 
    end 

    def destroy 
    end 

    def index 
    @books = Book.all 
    end 

    def show 
    end 

    private 
    def book_params 
     params.require(:book).permit(:title, :category_id, :author_id, :publisher_id, :isbn, :price, :buy, :format, :excerpt, :pages, :year, :coverpath) 
    end 
end 

HTML:

<div id= "books-index"> 
    <% @books.each_slice(4) do |book| %> 
     <div class = "row"> 
      <%= book.each do |book| %> 
       <div class="col-md-3 col-sm-3"> 
        <h3><%= book.title %></h3> 
        <%= image_tag(book.coverpath) %> 
        <%= link_to 'Read More', book_path(book), class:'btn btn-primary' %> 
       </div> 
      <% end %> 
     </div> 
    <% end %> 
</div> 

我是新來的Ruby和Ruby on Rails的,所以如果我需要發佈更多的資源或信息,以便使我的問題更加清楚,請讓我知道。感謝您的幫助

回答

3

你應該把<%標籤內book.each電話,而無需<%=標籤:

<% books.each do |book| %> 

現在,您打印的books.each的結果(這是books陣列)到HTML中。

+0

唉刪除=,在這裏我設置了一個Git倉庫=)解決了,感謝您的幫助,將接受一次我可以 –

1
<%= book.each do |book| %> 

打開語法後的等於打印後面的命令。這應該是的情況下,嘗試將其移除

+1

感謝,我會接受Marek Lipka的贊助人,因爲他在你之前發佈了一分鐘 –

0

從線<%= book.each do |book| %>

相關問題