在Rails engine gem中绘制路线可以通过以下步骤实现:
rails plugin new my_engine --mountable
这将创建一个名为my_engine的新Rails engine gem项目。
config/routes.rb
文件,定义需要绘制的路线。可以使用Rails的路由DSL语法来定义路由规则。例如,可以添加以下代码:MyEngine::Engine.routes.draw do
get '/my_route', to: 'my_controller#my_action'
end
这将定义一个名为my_route
的GET请求路由,将其映射到my_controller
控制器的my_action
动作。
rails generate controller my_controller my_action
这将生成一个名为my_controller
的控制器,并在app/views/my_controller
目录下生成一个名为my_action.html.erb
的视图文件。
app/controllers/my_controller.rb
文件中,可以添加以下代码:module MyEngine
class MyController < ApplicationController
def my_action
# 处理逻辑
end
end
end
config/routes.rb
文件中,添加以下代码:mount MyEngine::Engine, at: '/my_engine'
这将把引擎的路由挂载到主应用程序的/my_engine
路径下。
通过以上步骤,就可以在Rails engine gem中绘制路线。当主应用程序访问/my_engine/my_route
时,将会调用引擎中定义的控制器动作,并渲染相应的视图。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)、腾讯云对象存储(COS)、腾讯云数据库(TencentDB)等。您可以访问腾讯云官方网站了解更多产品信息和详细介绍。
参考链接:
领取专属 10元无门槛券
手把手带您无忧上云