我不确定如何始终创建事件,但仍保持数据完整性正确。这是我的模型
顾客
id
first
last
email
书
id
description
Book_Manager
customer_id
book_id
visible
为了做到这一点,我必须使用 has_many 关系,他的描述如下
Book
has_many :book_managers
has_many :customers, :through => :book_managers
Book_Manager
belongs_to :customer
belongs_to :book
Customer
has_many :book_managers
has_many :books, :through => :book_managers
我们的想法是查看之前已经创建的数据,这意味着我必须创建一个查询,其中 Book = Book_Manager Table where customer_id = current_customer 和 created_last。我不确定如何在图书控制器中创建这样的查询。我相信它可能看起来像查询。我是对的吗?当前客户是 sessionHelper 方法中的当前客户
@report = BookManager where customer.id == current_customer.id AND created_last.last
最后但并非最不重要的一点是,每次客户通过按保存修改文本时,都会执行 create 操作,并创建一个新的 book_manager,其中包含与图书管理器关联的正确的第 3 模型图书,并且客户也与图书管理器相关联。
我有以下代码,但我不确定它是否正确
class BooksController < ApplicationController
def edit
@book = Book.find(params[:id])
end
def create
@customer = Customer.first
@book = @customer.BookManager.build(params[:book])
end
end