私はRubyとRailsの両方にかなり慣れていませんが、Railsアプリケーションで新しい「組織」レコードを作成するためにコントローラーとビューを作成することができました:
class OrganizationsController < ApplicationController
新しい組織を作成するためのフォームもあり、レコードの UUID を生成するためのボタンをフォームに含めました。
<button class="btn btn-small" type="button" title="Generate UUID">
Generate UUID
</button>
このボタンを押すと、同じフォーム内の既存のフィールドに UUID を配置する UUID が生成されます。
<div class="field">
<%= f.label :uuid %><br>
<%= f.text_field :uuid %>
</div>
JS を使用する方法を見つけましたが、コントローラー クラス内のメソッドで SecureRandom.UUID を使用したいと考えています。これはどのように可能ですか?または、このメソッドを配置するより良い場所はありますか?
編集:
ありがとう、今私は次の方法を持っています:
helper_method :generate_uuid
def generate_uuid
puts SecureRandom.uuid
end
そして、フォームには次のものがあります。
<%= button_to "Generate UUID", :method=> "generate_uuid" %>
<div class="field">
<%= f.label :uuid %><br>
<%= f.text_field :uuid, :value => generate_uuid %>
</div>
<div class="actions">
<%= f.submit %>
</div>
ボタンはまだフィールドを生成して入力しません。さらに、generate_uuid ボタンは実際のフォームを送信しますが、このメソッドは f.submit ボタンでのみ許可されるべきです。何か案は?