我创建了一个refinanciamento,我的节目不正确。
show.html.erb
<p>
<strong>Nome:</strong>
<%= @funcionario.pessoa.nome %>
</p>
<p>
<strong>Matrícula:</strong>
<%= @funcionario.matricula %>
</p>
当我把@ funcionario.first.pessoa.nome,它“工作”但是,永远返回第一个,我不想这样,当然。
我的控制器:
def show
@funcionario = Funcionario.pesquisa_cpf(params[:pesquisa_func_cpf]).first
@refinanciamento = Refinanciamento.find(params[:id])
end
例如,当我注册一个refinanciamento时,我在网站上显示的网址为:/ refinancimento / 100,此refinanciamento的值为:id:100,funcionario_id:2 我需要一个显示具有此refinanciamento的funcionario的地方。我如何建立这个咨询?
我的模特是:
class Refinanciamento < ActiveRecord::Base
belongs_to :funcionario
(...)
class Funcionario < ActiveRecord::Base
has_many :refinanciamentos
(...)
我只想要显示创建了refinanciamento的funcionario的show nome和matricula。谢谢!
答案 0 :(得分:1)
首先,Rails是一个自以为是的框架,并假设一些模式来促进开发人员的生活,比如用英语实现一切,从类名到属性。所以你用你的母语失去了太多的编程(你可以随时翻译所有内容来翻译文本和内容,代码应该是英文的)。
其次,在问题正确的情况下,refinanciamento
和funcionario
之间存在关联。如果有refinanciamento
belongs_to
和funcionario
,当您拥有refinanciamento
个对象时,可以使用@refinanciamento.funcionario
并获取所有数据,例如nome
和matricula
。
def show
@refinanciamento = Refinanciamento.find(params[:id])
# Here you can access funcionario's properties like
# @refinanciamento.funcionario.pessoa.nome
# @refinanciamento.funcionario.matricula
# etc...
end