ruby-on-rails - rails 6中有许多默认路线?
问题描述
如何删除 Rails 6 中的默认路由?
我刚刚安装了 Rails 6.0.0 并运行了“rails new blog”。我去看看路线,发现了很多路线(见下文)。我尝试创建几个新项目,它们都具有相同的默认路由。
$ rake routes
Prefix Verb URI Pattern Controller#Action
rails_mandrill_inbound_emails POST /rails/action_mailbox/mandrill/inbound_emails(.:format) action_mailbox/ingresses/mandrill/inbound_emails#create
rails_postmark_inbound_emails POST /rails/action_mailbox/postmark/inbound_emails(.:format) action_mailbox/ingresses/postmark/inbound_emails#create
rails_relay_inbound_emails POST /rails/action_mailbox/relay/inbound_emails(.:format) action_mailbox/ingresses/relay/inbound_emails#create
rails_sendgrid_inbound_emails POST /rails/action_mailbox/sendgrid/inbound_emails(.:format) action_mailbox/ingresses/sendgrid/inbound_emails#create
rails_mailgun_inbound_emails POST /rails/action_mailbox/mailgun/inbound_emails/mime(.:format) action_mailbox/ingresses/mailgun/inbound_emails#create
rails_conductor_inbound_emails GET /rails/conductor/action_mailbox/inbound_emails(.:format) rails/conductor/action_mailbox/inbound_emails#index
POST /rails/conductor/action_mailbox/inbound_emails(.:format) rails/conductor/action_mailbox/inbound_emails#create
new_rails_conductor_inbound_email GET /rails/conductor/action_mailbox/inbound_emails/new(.:format) rails/conductor/action_mailbox/inbound_emails#new
edit_rails_conductor_inbound_email GET /rails/conductor/action_mailbox/inbound_emails/:id/edit(.:format) rails/conductor/action_mailbox/inbound_emails#edit
rails_conductor_inbound_email GET /rails/conductor/action_mailbox/inbound_emails/:id(.:format) rails/conductor/action_mailbox/inbound_emails#show
PATCH /rails/conductor/action_mailbox/inbound_emails/:id(.:format) rails/conductor/action_mailbox/inbound_emails#update
PUT /rails/conductor/action_mailbox/inbound_emails/:id(.:format) rails/conductor/action_mailbox/inbound_emails#update
DELETE /rails/conductor/action_mailbox/inbound_emails/:id(.:format) rails/conductor/action_mailbox/inbound_emails#destroy
rails_conductor_inbound_email_reroute POST /rails/conductor/action_mailbox/:inbound_email_id/reroute(.:format) rails/conductor/action_mailbox/reroutes#create
rails_service_blob GET /rails/active_storage/blobs/:signed_id/*filename(.:format) active_storage/blobs#show
rails_blob_representation GET /rails/active_storage/representations/:signed_blob_id/:variation_key/*filename(.:format) active_storage/representations#show
rails_disk_service GET /rails/active_storage/disk/:encoded_key/*filename(.:format) active_storage/disk#show
update_rails_disk_service PUT /rails/active_storage/disk/:encoded_token(.:format) active_storage/disk#update
rails_direct_uploads POST /rails/active_storage/direct_uploads(.:format) active_storage/direct_uploads#create
我期待最多 1 条路线(索引页)。
解决方案
您可以通过扩展actionmailbox
application.rbrails new
文件中需要rails/all
. 该文件仅包含默认rails
库。看看。
通过替换这一行,您不仅会排除路由,还会阻止您的应用加载从未使用过的代码。
application.rb
这是一个示例,显示了我的文件的顶部:
# config/application.rb
require_relative 'boot'
# Check out what rails/all.rb is currently expanded to:
# https://github.com/rails/rails/blob/master/railties/lib/rails/all.rb
# Replace `require 'rails/all'` with just the libs that you want and
# exclude the rest
require 'active_record/railtie'
# require 'active_storage/engine'
require 'action_controller/railtie'
require 'action_view/railtie'
require 'action_mailer/railtie'
require 'active_job/railtie'
require 'action_cable/engine'
# require 'action_mailbox/engine'
require 'action_text/engine'
require 'rails/test_unit/railtie'
require 'sprockets/railtie'
# the rest of your initialization follows here ...
推荐阅读
- android - 仅在目录中列出文件时,如何仅检索不包括路径的文件名?
- javascript - 我有一个带有这个参数的 onChange 函数可以正常工作,但我也想应用函数 onLoad
- java - 将数组从 strings.xml 添加到另一个 ArrayList
- python - Python:如何反转列表中的所有其他字符串?
- bash - 使用 sed 修改 bash 变量
- python - 如何检测一次按键并使用'!='符号?
- javascript - 如何找到专注的 React 组件?(如 document.activeElement)
- xamarin - 使用 ListView,我可以创建表格来输入成绩并显示计算结果吗?
- vb.net - 如何在我的 vb.net 编码中正确显示年份?
- python - 如何使用另一列的滚动平均值创建新列 - Python