카테고리에 속한 포럼 모델을 만들었으며 모든 카테고리의보기에서 해당 카테고리의 각 포럼을 표시해야하지만 링크가 잘못된 경로를 가리키고 있습니다 (예 : 카테고리 4에서는 카테고리/1/포럼/1을 가리키는 포럼과 카테고리 1이 존재하지 않음).레일스가 잘못된 포럼 경로를 보여줍니다
참고 : 각 카테고리는 위치 필드 (정수)를 가지며 해당 필드가 오름차순으로 정렬됩니다. 카테고리 4는 위치 1을 가지고 있지만 그 번호가 URL의 카테고리 ID 대신 있어야하는 이유는 무엇입니까? 내가 액세스/카테고리/4/포럼/1 때
나는 오류가
CategoriesController
class CategoriesController < ApplicationController
def index
categories_ordered
end
def new
@category = Category.new
categories_ordered
end
def create
@category = Category.new(category_params)
categories_ordered
if @category.save
redirect_to forums_path, notice: "Kategorija je uspešno kreirana."
else
render "new"
end
end
def show
find_category
find_forums
end
def edit
find_category
end
def update
find_category
if @category.update(category_params)
redirect_to category_path(@category), notice: "Kategorija je uspešno ažurirana."
else
render "edit"
end
end
def destroy
find_category
@category.destroy
redirect_to forums_path, notice: "Kategorija je uspešno obrisana."
end
private
def category_params
params.require(:category).permit(:name, :description, :position)
end
def find_category
@category = Category.find(params[:id])
end
def find_forums
@forums = @category.forums.all
end
def categories_ordered
@categories = Category.all.order("position ASC")
end
end
ForumsController " 'ID'= 1 종류를 찾을 수 없습니다"얻을
class ForumsController < ApplicationController
def new
find_category
@forum = @category.forums.new
end
def create
@category = Category.find(params[:category_id])
@forum = @category.forums.create(forum_params)
if @forum.save
redirect_to category_path(@category), notice: "Forum je uspešno kreiran."
else
render "new"
end
end
def show
find_category
find_forum
end
def edit
find_category
find_forum
end
def update
find_category
find_forum
if @forum.update(forum_params)
redirect_to forum_path(@forum), notice: "Forum je uspešno ažuriran."
else
render "edit"
end
end
private
def forum_params
params.require(:forum).permit(:title, :description)
end
def find_category
@category = Category.find(params[:category_id])
end
def find_forum
@forum = @category.forums.find(params[:id])
end
end
카테고리 #은을 보여
<% authorize %>
<h2><%= @category.name %></h2>
<p><%= @category.description %></p>
<div class="list-group">
<% @category.forums.each do |f| %>
<a href="<%= forum_path(f) %>" class="list-group-item">
<h4 class="list-group-heading"><%= f.title %></h4>
<p class="list-group-text">
<%= f.description %>
</p>
</a>
<% end %>
</div>
<% if is_admin? %>
<%= link_to new_forum_path, class: "btn btn-primary" do %>
<span class="glyphicon glyphicon-plus"></span> Dodaj forum
<% end %>
<%= link_to edit_category_path(@category), class: "btn btn-primary" do %>
<span class="glyphicon glyphicon-pencil"></span> Izmeni
<% end %>
<%= link_to category_path(@category), class: "btn btn-danger", method: :delete, data: { confirm: "Da li ste sigurni da želite obrisati ovu kategoriju?" } do %>
<span class="glyphicon glyphicon-trash"></span> Obriši
<% end %>
<% end %>
routes.rb
Rails.application.routes.draw do
root "welcome#index"
get "start" => "welcome#index", as: "index"
get "registration" => "users#new", as: "register"
get "login" => "sessions#new", as: "login"
post "login" => "sessions#create"
get "logout" => "sessions#destroy", as: "logout"
get "users" => "users#index", as: "users"
post "users" => "users#create"
get "profile" => "users#show", as: "profile"
get "user/:id" => "users#show", as: "user"
get "user/:id/edit" => "users#edit", as: "edit_user"
patch "user/:id" => "users#update"
delete "user/:id" => "users#destroy"
get "categories/add" => "categories#new", as: "new_category"
get "category/:id" => "categories#show", as: "category"
patch "category/:id" => "categories#update"
delete "category/:id" => "categories#destroy"
get "category/:id/edit" => "categories#edit", as: "edit_category"
get "terms" => "welcome#terms", as: "terms"
get "wh" => "bugs#new", as: "wh"
get "bugs" => "bugs#index", as: "bugs"
post "bugs" => "bugs#create"
get "bug/:id" => "bugs#show", as: "bug"
delete "bug/:id" => "bugs#destroy"
get "forum" => "categories#index", as: "forums"
get "category/:category_id/forum/add" => "forums#new", as: "new_forum"
get "category/:category_id/forum/:id" => "forums#show", as: "forum"
get "category/:category_id/forum/:id/edit" => "forums#edit", as: "edit_forum"
patch "category/:category_id/forum/:id" => "forums#update"
delete "category/:category_id/forum/:id" => "forums#destroy"
resources :users
resources :sessions
resources :categories do
resources :forums
end
resources :bugs
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end
routes.rb 파일을 확인 했습니까 ?? config/routes.rb도 게시하십시오. –
@ChetanDatta 게시하기. – Nikola