Использование рельсов 4 У меня есть класс Userbookrank, где пользователь оценивает книгу в библиотеке, а таблица включает user_id, book_id и rank. Userbookranks_controller.rb является следующее:рельсы Нет совпадений маршрутов [POST]
class UserbookranksController < ApplicationController
def new
@book = Book.find(params[:book_id])
@user = User.find(params[:user_id])
@userbookrank = Userbookrank.new
end
def create
@userbookrank = Userbookrank.new(userbookrank_params)
if @userbookrank.save
redirect_to userbookrank_path(@userbookrank)
else
redirect_to :root
end
end
def show
@userbookrank = Userbookrank.find(params[:id])
end
private
def userbookrank_params
params.require(:userbookrank).permit(:user_id, :book_id, :rank)
end
end
и файл new.html.erb
является следующее:
Ранг книги
<p> Book title: %[email protected] % </p>
<p> Book author: %[email protected] % </p>
<%=form_for :userbookrank do |f| %>
<%=f.hidden_field :book_id, :value => @book.id%>
<%=f.hidden_field :user_id, :value => current_user.id%>
<p>
<%=f.label :rank %>
<br>
<%=f.number_field :rank %>
</p>
<p>
<%=f.submit "Rank book"%>
</p>
<% end %>
show.html.erb
файл состоит в следующем: Книга, которую вы попал в ...
<p>Title: <%[email protected] %> </p>
<p>Author: <%[email protected] %> </p>
<p>Rank: <%[email protected] %> </p>
<p> <%=link_to 'Back to the book menu', userbookranks_path %> </p>
файл маршруты включает в себя следующее:
resources :userbookranks
и когда я подать знак есть ошибка маршрутизации:
рек маршруты включает в себя следующее:
userbookranks_path GET /userbookranks(.:format) userbookranks#index
POST /userbookranks(.:format) userbookranks#create
new_userbookrank_path GET /userbookranks/new(.:format) userbookranks#new
edit_userbookrank_path GET /userbookranks/:id/edit(.:format) userbookranks#edit
userbookrank_path GET /userbookranks/:id(.:format) userbookranks#show
PATCH /userbookranks/:id(.:format) userbookranks#update
PUT /userbookranks/:id(.:format) userbookranks#update
DELETE /userbookranks/:id(.:format) userbookranks#destroy
Спасибо очень много авансовый.
Дубликат: http://stackoverflow.com/questions/19204214/routing-error-no-route-matches-post-posts-new –
@Sampriti Panda нет ответа на этот вопрос, который помогает мне. Так что, пожалуйста, может кто-нибудь мне помочь? – user3184707