我想要的是创建一个简介页面,在那里我可以查看以前的书籍字段,如果客户改变文本,那么它会创建一个新的书籍。想要创建一个新的书籍实例而不是更新
我有以下型号的has_many关系
Customer -- ID, First, Last, Email
Book -- ID, Description
Book_Managers -- ID, Customer_id, Book_id, Visible
现在我已经是一个客户编辑这让我从更多的车型,如书籍,手机等渲染看多形式...
这里我的客户控制器
def edit
@customer = Customer.find(params[:id])
if @customer.books.any?
@book = @customer.books.order("created_at DESC").first
else
@book = @customer.books.build
end
end
要书的形式,我应该看到,当我想看到的是,如果我创建了一个新的实例最后并能够将“JavaScript圣经”修改为“The Java Bible”,它不会更新它,而只是创建一个新版本。现在当我去看表格时,我什么都看不到。如果我出于某种奇怪的原因,这只能让我更新。
class BooksController < ApplicationController
def create
@book = current_customer.books.build(params[:book])
if @book.save
flash[:success] = "Book Created"
redirect_to root_url
else
render 'customer/edit'
end
end
def index
@books = Book.all
end
def destroy
@book.destroy
redirect_to root_url
end
end
添加了这个
def update
@book = current_customer.books.build(params[:book])
if @book.save
flash[:success] = "Book Updated"
redirect_to root_url
else
render 'customer/edit'
end
末
我的书控制器,唯一的问题,现在是我的联想,我似乎无法找到任何一本书与当前客户。我的查询有错吗?
我正在使用它也允许客户向朋友展示或不显示内容。所以我不能使用这个,因此我需要我的第二个模型 – Jseb 2012-08-01 14:36:43