如何定义 link 路径

How to define a link path

我正在尝试弄清楚如何使用 Rails 4 制作应用程序。我一直卡在基本的东西上,我似乎无法确定未来使用的原则。

我有个人资料模型和行业模型。这些协会是:

简介:

has_and_belongs_to_many :industries, join_table: 'industries_profiles'

行业:

has_and_belongs_to_many :profiles, join_table: 'industries_profiles'

在我的个人资料显示页面,我正在尝试link到行业页面:

<% @profile.industries.limit(5).each do |industry| %>

    <%= link_to industry.sector.upcase, industry_path(@industry) %> 

<% end %>   

我找不到适用于此 link 的任何内容。

我试过以下方法:

industry_path(@profile.industry)
industry_path(@profile.industry_id)
industry_path(industry)
industry_path(profile.industry)
industry_path(industry.id)
industry_path(industry_id)

不过都是猜测。我不知道如何准备 API 扩展坞,所以我无法理解其中的任何内容。

任何人都可以看到如何 link 到 HABTM 协会另一方的显示页面以获取单个记录?

您可以在命令行中通过 运行 rake routes | grep industry 获取路由列表,这将为您提供一个带有前缀、操作和 uri 模式的 table。例如:

   industries GET    /industries(.:format)           industries#index
              POST   /industries(.:format)           industries#create
 new_industry GET    /industries/new(.:format)       industries#new
edit_industry GET    /industries/:id/edit(.:format)  industries#edit
     industry GET    /industries/:id(.:format)       industries#show
              PATCH  /industries/:id(.:format)       industries#update
              PUT    /industries/:id(.:format)       industries#update
              DELETE /industries/:id(.:format)       industries#destroy

对于您的情况,您应该查看 show 路径。这是行业,你将 _path 附加到上面任何前缀的末尾,结果是 industry_path。由于您在定义循环时已经声明了变量 industry,因此您可以使用它来代替实例变量。

简答:industry_path(industry)