2012-08-02 121 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] %> :)