所以我有這個書籍數據庫和一個洞穴數據庫。在洞穴中,有一個book_id字段,還有一個user_id字段,這樣我就可以看到誰挖洞了哪本書。將數據庫投入使用時出現問題
現在,我試圖創建一個控制器和視圖,但它不是很好。現在的觀點是這樣看:
<% provide(:title, "Burrow") %>
<b align="center">Choose the name of the book you want t burrow'</b>
<%= form_for(@book) do |f| %>
<div class="forms">
<%= f.name %>
<%= f.check_box(:book_id) %>
<%= f.submit 'Submit!' %>
</div>
<% end %>
但是,這使我的地方,因爲我希望把所有的書進入洞穴控制器@books創建了一個錯誤的問題。但我真的沒有看到任何其他方式? \
最後的想法是讓我把所有的書都顯示出來,然後放上一個複選框,這樣我就可以選擇我要挖洞的書了。之後,我還希望列出所有用戶的下拉菜單,我可以選擇爲另一個用戶挖掘該書,但默認值將是登錄用戶,但直到此時爲止。現在我很難理解,爲什麼我的上市書籍解決方案不起作用?
清單我這裏控制器也:
class BurrowsController < ApplicationController
before_action :signed_in_user, only: [:index,:edit,:update, :destroy]
before_action :admin_user, only: :destroy
def index
@burrows = Burrow.all
end
def show
@burrow = Burrow.find(params[:id])
end
def new
@burrow = Burrow.new
end
def create
@burrow = Burrow.new(burrow_params)
if @burrow.save
flash[:success] = "Burrowing a book was successful!"
redirect_to @burrow
else
render 'new'
end
end
def listing
@book_list = Book.all
end
# Private section, makes the page unable to be seen for non logged in users
private
def burrow_params
params.require(:burrow).permit(:user_id, :book_id)
end
def admin_user
redirect_to(root_url) unless current_user.admin?
end
# Redirecting not logged in user etc.
def signed_in_user
unless signed_in?
store_location
redirect_to '/sessions/new', notice: "Please sign in!"
end
end
end
它基本上給我一個形式的第一個參數不能包含零值錯誤。所以它沒有得到充滿書名的@book。 – Kaspar
是的,這是一個錯誤類型,但這就是大多數的代碼被命名爲allready,所以我想我現在會去這個.. – Kaspar