我在ruby rails中有一个小应用程序。
我是这门语言的新手,我想在我的数据库(mysql)中找到表的特定列中的重复记录。
<th>Count Activation</th>
<td align="center" width="4%"><%= Database.select(:license_code).count %></td>
我把它放进去,这就得到了license_code列,并计算出在我的应用程序中出现许可证代码记录的次数。
我需要找到许可证代码的重复值,以及找到的每个值的重复计数,并将其放入我的erb页面的“计数激活”列(只是一个显示数据库的页面:
<table width="120%" align="center" border="2" class="display" id="mytable" style="margin:3px">
<thead>
<tr>
<th>Negozio</th>
<th>Cliente</th>
<th>Azienda</th>
<th>Referente</th>
<th>Cellulare</th>
<th>Email</th>
<th>Antivirus</th>
<th>Attivazione Effettiva</th>
<th>Attivazione al cliente</th>
<th>Scadenza Reale</th>
<th>License code</th>
<th>Licenza valida per n. pc</th>
<th>Licenza attivata su n. pc</th>
<th>Prezzo</th>
<th>Opzioni</th>
<th>Count Attivazioni</th>
</tr>
</thead>
<tbody>
<% @databases.each do |database| %>
<tr>
<td align="center" width="15%"><%= database.shop %></td>
<td align="center" width="5%"><%= database.customer %></td>
<td align="center" width="6%"><%= database.company %></td>
<td align="center" width="7%"><%= database.referer %></td>
<td align="center" width="10%"><%= database.phone %></td>
<td align="center" width="10%"><%= database.email %></td>
<td align="center" width="4%"><%= database.antivirus %></td>
<td align="center" width="7%"><%= database.activated_at %></td>
<td align="center" width="7%"><%= database.customer_activated_at %></td>
<td align="center" width="6%"><%= database.license_expires_at %></td>
<td align="center" width="16%"><%= database.license_code %></td>
<td align="center" width="4%"><%= database.license_activable_for_pc %></td>
<td align="center" width="4%"><%= database.license_activated_in %></td>
<td align="center" width="4%"><%= database.price %></td>
<td align="center" width="10%"><%= link_to 'Show', database %> | <%= link_to 'Edit', edit_database_path(database) %> |
<%= link_to 'Destroy', database, method: :delete, data: { confirm: 'Are you sure?' } %></td>
<td align="center" width="4%"><%= Database.select(:license_code).count %></td>
</tr>
<% end %>
有人能帮我吗?:)
泰
最佳答案
license_count
的重复值
class Database < ActiveRecord::Base
scope :duplicate_databases, -> {select(:license_code).group(:license_code).having("count(*) > 1")}
end
控制器内
def action
@duplicate_records = Database.duplicate_databases
end
在视图中
<td> count activation: <%= @duplicate_records.count %> </td>
关于mysql - Ruby Rails,获取索引erb页面中db中某列的重复计数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25620867/