最近、ユーザーがグループに参加してグループとやり取りできるサイトの作成が開始されました。これまで私はユーザーのために勉強してきましたが、私はユーザープロファイルやグループプロファイルを作成するために何を使用するのかと不思議に思っています。これは私の最初のレールのアプリケーションであり、私はちょうどここから行く場所についてのいくつかのガイダンスが必要ですか?どんなツールが必要ですか?これを行う最善の方法は何ですか?ユーザーがグループに参加してグループとやりとりできるようなサイトを作成する
答えて
必要なツールは、Railsだけです。まず、アプリケーションに他のモデルを作成する必要があります。あなたの説明から私はUserProfileとグループを見る。 Railsのジェネレータコマンドはあなたのためにそれらをスタブアウトします:
$ rails generate model UserProfile
$ rails generate model Group
$ rails generate model Membership
今、あなたはあなたのアプリケーション/モデルディレクトリにuser_profile.rbとgroup.rbを持っています、だけでなく、デシベル/移行/ でのマイグレーションが .RBを作成します。次に、データベースに作成するフィールドをediting the migration scriptでレールに伝える必要があります。ここにあなたが望むものは自由に含めることができますが、少なくとも外部キーにあなたのデータを関連させたいと思うでしょう。
$ rake db:migrate
そして、あなたは、コード内でそれらの関係を定義するためにActiveRecordのアソシエーションクラスのメソッドを使用することができます。
def CreateUserProfiles < ActiveRecord::Migration
create_table :user_profiles do |t|
t.belongs_to :user
...
と
def CreateMemberships < ActiveRecord::Migration
create_table :memberships
t.belongs_to :user
t.belongs_to :group
...
今、あなたはあなたのためにデータベース表を作成するためにあなたの移行を実行することができますRailsがあなたのためにSQLを処理するようにします。
UserProfile.create(:user => User.first, :attr => "value", ...)
またはグループにユーザーを置くために:
group = Group.create(:name => "Group 1")
group.users << User.first
のツールを使用し、それら
app/models/membership.rb
class Membership < ActiveRecord::Base
belongs_to :user
belongs_to :group
end
app/models/user.rb
class User < ActiveRecord::Base
has_one :user_profile
has_many :memberships
has_many :groups, :through => :memberships
...
end
app/models/group.rb
class Group < ActiveRecord::Base
has_many :memberships
has_many :users, :through => :memberships
end
app/models/user_profile.rb
class UserProfile < ActiveRecord::Base
belongs_to :user
end
は、今あなたがユーザープロファイルを与える必要がある場所ですべてのツールを持っています時間を節約できますが、すべてが最初のRailsに依存するツールを使用する方法を学びます。 Rails Guidesをチェックしてください。優れています。
+1私にそれを打つ。多対多を示す素晴らしい答え:through: –
すごいサムCありがとう。私はこれを試して、それがどうなるかを見てみましょう。 – Yeddie
- 1. mysqlユーザーとグループを作成する[windows]
- 2. SignalRと参加グループ
- 3. グループに参加することによって
- 4. グループと正しくグループ化することができない
- 5. Laravel 5.2のクエリビルダーでクエリを作成するには、グループ参加
- 6. グループを作成し、ユーザーをデータベースに保存する必要があります。
- 7. LINQクエリが参加し、グループ
- 8. ユーザーとグループ間の結合アクションを正しく作成する
- 9. TFSはチームプロジェクトの「お気に入り」やユーザー定義のグループ化を行うことができますか?
- 10. グループに参加キーを追加する
- 11. OpenLDAPでActive Directoryユーザーとグループを作成するためのLDIF?
- 12. ASMACK。新しいユーザーを作成して特定のグループに追加する
- 13. 「ユーザーとグループ」にアクセスすることができません
- 14. Linqグループ参加
- 15. Facebookグループに参加することを依頼する
- 16. アプリケーショントークンを使用してグループ内の投稿を作成することがグループに表示されない
- 17. は、ユーザーがの一部にすることができ、多くのユーザー、多くのグループがあり、2008
- 18. のFacebook(グループごとの最大サブクエリに関連して、参加)
- 19. グループを作成してグループに割り当てられたユーザを登録する - Ruby on Rails
- 20. 多対多のユーザーとグループですが、グループには所有者があります
- 21. SignalRを使用してグループに参加する方法
- 22. ユーザーがサイトのプロバイダーとチャットできるようにするオプション
- 23. ユーザーがASP.NET Webサイトで新しいカテゴリとフィールドを作成できるようにする
- 24. gidではなくグループ名でLDAPにグループを追加する
- 25. ユーザとグループはモデルの検証に参加します
- 26. グループとドロイドを異なるグループに設定しました。クリックするとチャイルドリスト
- 27. マネージコードなしでSQL 2008とやりとりするアプリケーションの作成
- 28. Datatables行グループ化 - グループごとに行数を追加し、すべてを展開/折りたたむ方法
- 29. Apacheが実行しているユーザーとグループを把握するにはどうすればよいですか?
- 30. イベントxを実行していないユーザーによるMongoDBグループ
ユーザーとグループの表を事前に入力しようとしていますか?または、サイト訪問者が独自のユーザーアカウントとグループを作成する方法について不思議ですか? – Schwartzie
ユーザーがプロファイルを作成し、グループに参加してグループを編集できるように、コード作成方法がわかります。 – Yeddie