模型的存储语言
Store languages for a model
这是上下文:我有 Users
,我想存储他们说的 languages
。
我应该怎么做?为 Users
创建一个 Languages
table 关联 has_many
?将其存储为语言用户列中的 hstore ?
此外,我正在使用 simple-form
,我想用所有语言填充 select(:multiple
因为 User
可以说多种语言) ,知道如何实现吗?我应该用所有语言创建一个常量吗?也许 gem 可以做到这一点?
我进行了研究,但找不到符合此需求的任何内容。
看起来像 User
和 Language
之间的基本 M:M 关系(在 Active Record Associations 指南中有详细描述)。
User
模型怎么样:
class User < ApplicationRecord
has_many :user_languages
has_many :languages, through: :user_languages
end
还有一个 Language
模型,例如:
class Language < ApplicationRecord
has_many :user_languages
has_many :users, through: :user_languages
end
还有一个 UserLanguage
模型,例如:
class UserLanguage < ApplicationRecord
belongs_to :user
belongs_to :language
end
我想你会播种你的 languages
table.
这是上下文:我有 Users
,我想存储他们说的 languages
。
我应该怎么做?为 Users
创建一个 Languages
table 关联 has_many
?将其存储为语言用户列中的 hstore ?
此外,我正在使用 simple-form
,我想用所有语言填充 select(:multiple
因为 User
可以说多种语言) ,知道如何实现吗?我应该用所有语言创建一个常量吗?也许 gem 可以做到这一点?
我进行了研究,但找不到符合此需求的任何内容。
看起来像 User
和 Language
之间的基本 M:M 关系(在 Active Record Associations 指南中有详细描述)。
User
模型怎么样:
class User < ApplicationRecord
has_many :user_languages
has_many :languages, through: :user_languages
end
还有一个 Language
模型,例如:
class Language < ApplicationRecord
has_many :user_languages
has_many :users, through: :user_languages
end
还有一个 UserLanguage
模型,例如:
class UserLanguage < ApplicationRecord
belongs_to :user
belongs_to :language
end
我想你会播种你的 languages
table.