1

それでは、次のコードを含む Rails ビューがあるとします。

<h1>Users who have the <%= @title.name %> Title</h1>
<ul>
  <% @title.users.each do |user| %>
    <li><%= user.username %> <div class="rw-ui-container rw-urid-X"></div></li>
  <% end %>
</ul>

そして、私たちがやりたいことは、この行を自動的に出力することです:

<div class="rw-ui-container rw-urid-X"></div>

各ユーザー名のすぐそばでループがスローされますが、 Xを毎回異なる一意の乱数にする必要があります...

これはどのように達成できますか?

4

3 に答える 3

1

この解決策が役立つかもしれません: 1.user_idランダムの最初の部分として使用しXて、別のユーザーがそれを持っていないことを確認できます 2. 2 番目の部分は、UTC 形式の時刻で、X毎回異なる設定をします 3. 3 番目の部分は単なる標準ランダム関数。あなたが望むなら、あなたはそれを使っていません。

<h1>Users who have the <%= @title.name %> Title</h1>
<ul>
  <% @title.users.each do |user| %>
    <li><%= user.username %> <div class="rw-ui-container rw-urid-<%= "#{user_id}#{Time.now.utc.to_i}#{rand(100000)}".to_i %>"></div></li>
  <% end %>
</ul>
于 2012-06-22T13:02:44.517 に答える
0

ユーザー テーブル コールに新しいフィールドを簡単に追加する uuidか、好きな名前を付けて、uuidというgemを使用して一意の ID を割り当てることができます。

これにより、セクションで一意性が確保されX、コメントの1つで言及されているように、値が更新されても変更されません

だからここにあなたのXコードがどのように見えるか

<% @title.users.each do |user| %>
    <li><%= user.username %> <div class="rw-ui-container rw-urid-<%=user.uuid %>"></div></li>
  <% end %>
于 2012-06-23T12:51:40.277 に答える
0
css_arr = ["rw-ui-container rw-urid-1","rw-ui-container rw-urid-2","rw-ui-container rw-urid-3"]

<div class="<%= css_arr.sample %>"></div>
于 2012-06-22T10:06:31.010 に答える