所以我有 2 個模型用戶和書籍。Books 有 user_id,name,User 有 name,aaddress。兩者都有意見。我確實在用戶視圖中創建了一個 link_to 以重定向到書籍視圖,但我想通過 id 重定向。
我的意思是,如果我單擊 User1 鏈接到,我只想查看 user1 書籍(只有 user_id:1 的書籍,如果有可能在開頭看到最近創建的,所以如果我創建了 book.id=5 會get first 和 book.id=1 將是最后一個)。
用戶型號:
Class User < ApplicationRecord
has_many :books
圖書型號:
Class Book < ApplicationRecord
belongs_to :user
控制器書展:
def show
@book = Book.all
end
如果您需要其他任何內容,請在評論中詢問,我將進行編輯。如果我沒有正確解釋,也很抱歉。
uj5u.com熱心網友回復:
在您的books#index控制器操作中
def index
@books = Book.all
@books = @books.where(user_id: params[:user_id]) if params[:user_id].present?
end
在你users#show看來
link_to "This user books", books_path(user_id: @user.id)
所以如果你去/books你會看到所有的書
但是如果你點擊用戶頁面上的鏈接——你只會看到這個用戶書
uj5u.com熱心網友回復:
對我來說,最好的解決方案是保留默認方法并創建一個新方法:
def show_user_books
@books = Book.where(user_id:params[:user_id]).order(created_at: :desc) if params[:user_id].present?
redirect_to books_path
end
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/456266.html
上一篇:Ruby_如何在哈希中查找值訂閱
下一篇:Ruby按變數條件劃分陣列陣列
