我想在站点用户编辑/创建页面中进行语言选择下拉列表.
为此,我当然将网站翻译成多种语言.使用I18n.available_languages,我可以得到一个区域代码数组,就像这样
development environment (Rails 2.3.4)
> I18n.available_locales
=> [:en, :da]
Run Code Online (Sandbox Code Playgroud)
此外,我创建了一个语言模型并将其与用户相关联:
# app/models/language.rb
class Language < ActiveRecord::Base
has_many :users
end
# app/models/user.rb
class User < ActiveRecord::Base
belongs_to :language
end
# db/schema.rb
create_table "languages", :force => true do |t|
t.string "name"
t.string "code"
end
create_table "users", :force => true do |t|
t.integer "language_id"
end
Run Code Online (Sandbox Code Playgroud)
然后语言表包含本地语言中的语言环境代码和语言名称,如下所示:
| id | name | code |
------------------------------------
| 28 | Dansk | da |
| 29 | Nederlands | nl |
| 30 | …Run Code Online (Sandbox Code Playgroud)