2012-08-02 161 views
0

我有3個車型之一模板缺少的Rails

Customer    Book     Book_Managers 
id      id     id 
first     description   customer_id 
last     book_manager_id  visible 
email     
password     

當顧客進入,在客戶#編輯則呈現形式的書籍和book_managers成一種形式

在我BookController的,我有以下創建一本書和book_manager

class BooksController < ApplicationController 
    def create 
     @customer = current_customer 
     @book = @customer.book_managers.build(:visible => "true") 
     @book = @customer.book_managers.first.books.build(:description => "2012") 
    end 
end 

但後來它告訴我有缺少模板。我也只使用一個簡單的form_for。我做錯了什麼?我相信我應該使用accept_nested_attributes_for,但任何人都有一個很好的教程呢?

更新:關於這裏的鐵路廣播我的關係,看看它是否有意義?

Customer 
    has_many :book_managers 
     has_many :books, :through => :book_managers 
    accepts_nested_attributes_for :book_manager 
Book 
    belongs_to :book_manager 
    def customer 
     book_manager.customer 
    end 
Book_Manager 
    belongs_to :customer 
    has_many :books 
    accepts_nested_attributes_for :book 
+0

缺少模板錯誤出現時不會找到一個視圖part.Need的詳細信息...保存圖書信息......它應該去哪裏後? ...數據是否存儲在3個表格中? – Rakesh 2012-08-02 13:46:26

+0

數據獲取存儲到2臺,書的描述和book_manager知道,如果它的可見或不可見 – Jseb 2012-08-02 13:47:17

+0

所以保存你是不是重定向到任何看法......這就是問題後...添加redirect_to的:行動=>指數 – Rakesh 2012-08-02 13:51:34

回答

0

嗯,大部分的時間,之後成功創建,你應該redirect_to您的修改或上市頁成功消息(flash[:info] = "Success")。

所以,你應該有

def create 
    @customer = current_customer 
    @book = @customer.book_managers.build(:visible => "true") 
    @book = @customer.book_managers.first.books.build(:description => "2012") 
    flash[:info] = "Success" 
    redirect_to :some_action 
end 

,並在綠色例如視圖顯示<%= flash[:info] %> :)