0

わかりましたので、ジャンルや誕生日など、他の多くの属性を持つユーザーが必要な新しいRails 3.2.3アプリケーションがあります。データベースを構築するための最良の方法を求めています。ユーザーとプロフィールを考えていた

class Profile < ActiveRecord::Base
  belongs_to :contact

class User < ActiveRecord::Base
  has_one :profile

姓名とパスワード情報を users テーブルに入れ、その他のデータを profile テーブルに入れます。ユーザー認証としてdeviseを使用しています。しかし、必要なすべての情報を含むサインアップ フォームがあるので、フォーム内の 2 つのテーブルのネストを回避する簡単な方法はありますか。これを行う簡単な方法はありますか...これは非常に基本的なようですが、少し混乱しています

4

1 に答える 1

1

個人的には、同じテーブル内の同じエンティティを指すデータを保持するのが好きです。

ユーザー => 名前、アドレス、パスワード、... 必要なものとその複雑さによって異なります。

使いたいbelongs_to => :user #module\table name

...のようなプロファイルデータを取得するには、フォームを更新する必要がありuser.profile.passwordます(これは、質問から理解した簡単な方法です)

編集したいときはedit_user_profile_path(current_user, @profile)、パス user_profile に気づくようなものを使用できます。これは、どこから取得するかを知っている場所です。

この回答のようにhttps://stackoverflow.com/a/4753856/643500


余談ですが、レールに慣れていない場合は、最初の認証システムをゼロから作成することを検討してください。このようにして、すべてがどこにあるのかを学び、それをカスタマイズする方法や工夫する方法を知ることができます. チュートリアルはこちらhttp://ruby.railstutorial.org/ruby-on-rails-tutorial-book

于 2012-04-30T20:43:02.217 に答える