Symfony / Propel:i18n表

时间:2010-10-06 10:34:37

标签: internationalization symfony1 propel

我有这个架构和装置:

  sedi:
    _attributes:  { isI18N: true, i18nTable: sediI18n }
    id:           ~


  sediI18n:
    id:  { type: integer, required: true, primaryKey: true, foreignTable: sedi, foreignReference: id }
    culture: { isCulture: true, type: varchar, size: 7, required: true, primaryKey: true }
    paese_indirizzo:  { type: varchar(6), required: true }
    indirizzo:        { type: varchar(1024), required: true }


Sedi:
  sede_roma_1:             { }


SediI18n:
  sede_roma_1_italiano:             { id: sede_roma_1, culture: it, paese_indirizzo: eu, indirizzo: "Ufficio di Roma 1 Testaccio Via Galvani, 17 Roma - 00153 Italia" }
  sede_roma_1_francese:             { id: sede_roma_1, culture: fr, paese_indirizzo: eu, indirizzo: "Rome Office 1: Testaccio Via Galvani, 17 Roma - 00153 Italia" }

我试图在模板中只显示意大利语中的sede(“Ufficio di Roma”),但它也显示了法语中的sede ..

在该模板中,我写了var_dump($sf_user->getCulture())并打印“它”。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我建议您遵守约定并使用小写字符和下划线表示名称。实际上,您不必编写太多代码即可获得I18N支持。应该是什么:

sedi:
  id:

sedi_i18n:
  paese_indirizzo: { type: varchar(6), required: true }
  indirizzo: { type: varchar(1024), required: true }

相应调整你的灯具。