私はレールで手を試しています(4)。私は以前にいくつかのシナトラをやった.
ユーザーが組織名、住所、自分の名前、パスワードなどを入力できるサインアップフォームがあります。ユーザーと組織の2つのテーブルがあり、これらのテーブルにはサインアップデータが入力されます。したがって、2 つのアクティブなレコード モデルusers
とがありorganizations
ます。私のコントローラーは次のようになります。
class SignupsController < ApplicationController
# GET /signup
def new
# show html form
end
# POST /signup
def create
@signup = Registration.register(signup_params)
respond_to do |format|
if @signup.save
format.html { redirect_to @signup, notice: 'Signup was successfully created.' }
else
format.html { render action: 'new' }
end
end
end
private
# Never trust parameters from the scary internet, only allow the white list through.
def signup_params
params[:signup]
end
end
Registration
モデル (データベース内のテーブル)がありません。私が探しているのは、次のようなRegistration
モデルを持つことができるモデル (モデルと呼ぶべきですか?) です。
class Registration
def self.register params
o = Organization.new params
u = User.new o.id, params
self.send_welcome_email params[:email]
end
def send_welcome_email email
#send email here
end
end
1) では、このRegistration
クラスはどこに保管すればよいでしょうか?
2)これはそのような状況に対する正しいアプローチですか?そうでない場合、それを行う最善の方法は何ですか?
3)そのようなクラスを持つことは、単体テストの実行に影響しますか?
4) ファイルがあるsignup_helper.rb
ようですが、その用途は何ですか?SignupsController