-1

基本的な質問ですが、1) サロン 2) ユーザーのような 2 つの異なるテーブルにデータを保存する必要がある 1 つのサインアップ フォームを作成する必要があるため、私は混乱しています。サロンテーブルと電子メール、パスワード、アドレスはユーザーテーブルに保存する必要があります。これをうまくやる方法

私のビューのソースコードはこのようなものです

<%= form_tag users_path(@users), :method => :post do |f| %>


<%= devise_error_messages! %>

  <div><%=  label_tag :business_name %><br />
  <%= text_field_tag :business_name %></div

  <div><%=  label_tag :website_url %><br />
  https://<%= text_field_tag :website %></div>

  <div><%=  label_tag :business_adress %><br />
  <%= text_field_tag :business_adress %></div>


  <div><%=  label_tag :owners_name %><br />
  <%= text_field_tag :name %></div>

  <div><%=  label_tag :phone_number %><br />
  <%= text_field_tag :phone_number %></div>

  <div><%=  label_tag :email %><br />
  <%= email_field_tag :email %></div>

  <div><%= label_tag :password %><br />
  <%= password_field_tag :password %></div>

  <div><%= label_tag :password_confirmation %><br />
  <%= password_field_tag :password_confirmation %></div>

  <div><%= submit_tag "Sign up" %></div>
<% end %>

また、コントローラー側のコードがどのように管理され、フィールドデータが別のテーブルに保存されるかを知りたい

4

3 に答える 3

1

コントローラーでは、Users_controller は次のようになります。 rails 4 with strong parameters

class UsersController < ApplicationController
 def create
   @user = User.create!(user_params)
   @user.salons.create!(salon_params)
 end

private
 def user_params
    params.require(:user).permit!(:name,:phone,:email, :password) #permit those parameters which you required 
 end
 def salon_params
   params.permit!(:business_name, :website, :business_adress) 
 end 
end

モデル内

class User < ActiveRecord::Base           
     has_many :salons        
  end   

ありがとう

于 2013-07-26T09:58:57.027 に答える