私は Authorization(user_id, code, otherparam1, ...) をスキャフォールディングし、コードのみを必要とする custom_create メソッドを authorizations_controller に追加したいと考えています。このメソッドは他のパラメーターを生成します。このメソッドは、json で動作するか、User.newcustom(code) などの他のメソッドで呼び出される必要があります。
def newcustom
case request.method
when :post #post
code = params[:code]
if(code and code != '')
...
respond_to do |format|
if @authorization.save
format.html { redirect_to @authorizations, notice: 'Authorization was successfully created.' }
format.json { render json: @authorizations, status: :created, location: @authorization }
else
format.html { render action: "new" }
format.json { render json: @authorization.errors, status: :unprocessable_entity }
end
end
else #get
respond_to do |format|
format.html
end
end
ここに私の newcustom.html.erb があります
<%= form_tag( newcustom_authorizations_path, :method => :post ) do %>
<div class="field">
<%= text_field_tag :code %>
</div>
<div class="actions">
<%= submit_tag('Get tokens') %>
</div>
<% end %>
しかし、フォームであるjsonでは機能しません。また、メソッド newcustom(:code => code) を呼び出すと、引数が多すぎます (0 に対して 1)。何か案が ?