新しいページを作成すると、コンソールとデータベースに保存されていることがわかります。私はエラーファイルが保存されるかサーバーが再起動されるまで、ページは読み込まれません。
No route matches [GET] "/page-slug"
が、これは私のルートファイルで取得するページを表示しようとすると はしかし、私が集中するエリアを信じるPage.where.notです...
Rails.application.routes.draw do
mount Ckeditor::Engine => '/ckeditor'
resources :publicpages, only: [:show]
resources :categories, only: [:show]
resources :menus, only: [:show]
namespace :admin do
get '/dashboard', to: 'admin#dashboard'
resources :menus, except: [:show]
resources :pages
resources :categories
end
Page.where.not("slug" => nil).all.each do |page|
get "/#{page.slug}", controller: "pages", action: "show", id: page.id
end
end
ファイルを保存するかサーバーを再起動するとすぐにルーティングが機能します。私がこれらの2つのことのうちの1つを行うまで、ページはそのエラーをスローし続けます。この問題を解決してファイルを保存したりサーバーを再起動しなくてもすぐにページを表示できるように、どのようにこの問題を解決するかについて困惑したことは、これまでに遭遇したことはありません。