0

我目前正在开发一个 Rails 应用程序,它应该接受特定国家/地区的银行帐户详细信息。

例如:

German Bank Details:
Kontoinhalber: Alice Springs
Kontonummer: 1234567
Bankleitzahl: 111111111

French Bank Details:
Numéro de compte: 0987654
Clé RIB: 123
Code banque: 12345
Code guichet: 1234

如何将这种不同的格式保存到数据库中?此外,如何为此显示不同的输入字段?

4

1 回答 1

0

由于您可能不需要搜索这些字段,因此您可以serialize在模型中使用 d 文本字段。

为每个国家/地区设置一个定义,可能是一个常量散列:

BANK_ACCOUNT_FIELDS = {
         # use array to preserve order
  :de => [:account_holder, :account_number, :bank_number], 
  :fr => [:account_number, :bank_key, :bank_code, :branch_code]
}

有了这个,您可以访问每个字段,例如

lang = @bank_account.lang # use this field to know the country settings
BANK_ACCOUNT_FIELDS[lang].each do |field_name|
  @bank_account.data[field_name] = ...
end

对于显示使用每种语言的部分,为了显示字段名称使用 I18n 模块。

于 2011-08-10T09:50:53.027 回答