我有我的申请" http://www.example.com/test"。 当我点击网址时,我会看到索引页面,其中显示了个人资料列表。
要显示列表中的每个配置文件,我使用了部分配置文件。 每个配置文件都链接到他们自己的节目页面。
为了提供链接addreess,我使用了像这样的Rals路径助手
profile_path(:id => whatever_id)
问题是生成的网址是这样的: -
/profile/whatever_id
它完全跳过应用名称" test"。我的预期网址是
/test/profile/whatever_id
任何人都可以告诉可能的原因是什么?
答案 0 :(得分:0)
这取决于你在“app name”下的含义。如果应用程序使用Passenger Apache / Nginx模块安装在/ test下,那么Rails应用程序将遵循服务器端前缀,并将自动生成正确的URL,只有开发环境将在根范围内生成URL。
如果您的应用程序是独立运行或通过代理设置运行(如果前端Web服务器是Nginx服务器,则典型设置),并且您希望在前缀路径下运行它,那么您必须使用这样的scope
方法:
Rails.application.routes do
scope(:path => '/test') do
# the rest of your routes go here
end
end