私は、追加のカスタムフィールドが2つ(= :organization_id
と:username
)の認証にDeviseを使用しています。私はまた、単に名前で構成される組織の足場を作りました。ユーザーがサインアップすると自動的に "組織"を作成しますか?
現在、ユーザーがサインアップすると、組織ID(整数)とユーザー名(文字列)を入力できます。
ユーザーbelong_to
組織と組織has_many
ユーザー。
は、ここに私のモデルがどのように見えるかだ(私はORGANIZATION_ID追加するアプリ/ビュー/工夫/登録内のファイルとユーザー名を除き、そのまま他のすべてを左):
#1 user.rb
class User < ActiveRecord::Base
belongs_to :organization
# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me, :organization_id, :username
end
#1 organization.rb
class Organization < ActiveRecord::Base
has_many :users
end
私が希望するのは、ユーザーがorganization_idを指定しなくてもサインアップしたときに、組織が自動的に作成されるということです。 :username
がどのように私はこれをやって行くだろうと
また、理想的@organization.name
はまったく同じでしょうか?
私はRailscastをnested model formsに見ましたが、彼は調査フォームの中に質問を作成しており、質問は調査に属しています。私はそれを他の方法で回避を行う必要があります(ユーザーがアンケートに属しているユーザーフォーム、内部の組織を作成する。)
すべてのヘルプや提案をいただければ幸いです。..
うわー、素晴らしい、うまくいった!どのように私はこれを見てストーク私は考えていない。そのようにする方法はありますか?username = @ organization.name? – cdotfeli
あなたは私がjuste編集したもののような意味ですか? –
残念ながら、それはうまくいきません - 私が新しいアカウントにサインアップすると、組織名はまだ空白になっています。ありがとうございます!私がこれを理解しようとすることができるかどうかを見てみましょう。 – cdotfeli