0

CPF を数字で表示するとすべての結果が表示されるという検索があります。わかりましたが、次のように表示する必要があります: (個人とその契約数のみ) * 私のコードはポルトガル語です。申し訳ありません

Name
Registry
CPF
   Contract 1 ---- Show all contracts
   Contract 2   --------
   Contract 3 -----------

しかし、それは現在そうなっています:(契約金額に応じて同じ値)

Name
Registry
CPF
   Contract 1 ---- Show all contracts
   Contract 2   --------
   Contract 3 -----------

Name
Registry
CPF
   Contract 1 ---- Show all contracts
   Contract 2   --------
   Contract 3 -----------

Name
Registry
CPF
   Contract 1 ---- Show all contracts
   Contract 2   --------
   Contract 3 -----------

値を複製しています...契約の番号のため

私の見解は次のとおりです。

<% if params[:pesquisa_func_cpf].present? %>
  <h4><b>Resultados</b></h4>
  <% @autorizacoes.each do |autorizacao| %>
    <table class="table table-condensed">
      <tr>
        <th>Name</th>
        <td><%= autorizacao.employee.person.name %></td>
      </tr>
      <tr>
        <th>Registry</th>
        <td><%= autorizacao.employee.registry %></td>
      </tr>
      <tr>
        <th>CPF</th>
        <td><%= autorizacao.employee.person.cpf %></td>
      </tr>
    </table>
    <hr />
    <table class="table table-condensed table-bordered">
      <th>Contract number</th>
      <% @autorizacoes.each do |autorizacao| %>
        <td><%= autorizacao.number_contract %></td>
      <% end %>
    </table>

  <% end %>
<% end%>

これは私のコントローラーです:

もし params[:pesquisa_func_cpf].present? @autorizacoes = Autorizacao.pesquisa_func_cpf(params[:pesquisa_func_cpf]).all

.all の代わりに .distinct を試してみましたが、うまくいきません:(

そして、私の相談(私はオラクルを使用しています)は、それですか:

select * from autorizacoes INNER JOIN employers ON employers.id = autorizacoes.employer_id
                           INNER JOIN people ON employers.person_id = people.id
                           WHERE people.cpf  LIKE '111.111.111-11'

私の例によれば、3つの結果が返されます。この構造を残す方法を教えてください:

Name
Registry
CPF
   Contract 1 ---- Show all contracts
   Contract 2   --------
   Contract 3 -----------
4

1 に答える 1

0

わかった!私のコントローラーでは、これだけです:

if params[:pesquisa_func_cpf].present?
      @employers = Employee.pesquisa_cpf(params[:pesquisa_func_cpf]).all
      @autorizacoes = Autorizacao.pesquisa_func_cpf(params[:pesquisa_func_cpf]).all

そして、私の見解では <%= autorizacao.employee.person.name %> を削除して <%= employee.person.name %> を入れます

これだけで動作します!

于 2016-04-07T14:56:45.333 に答える