我在 Symfony2 上以特定语言为个人项目开发了一个网站。编程通常需要很长时间,因为我喜欢在开发代码时遵循安全的方法,即使这是最愚蠢的事情。我现在的计划是实施我的目录业务网站 - 比如说乐器公司 - 以便来自世界各地的每个人都可以创建一个帐户并注册他们的业务。
我所做的是,我从头开始实现了所有内容:一个安全包,一些基本实体,如 Business {name, location, phone, email, information, etc.}, BusinessCategory {name, information etc.} 和一些自定义但它们之间的简单关系。用户可以成功注册一个帐户,然后注册他们的业务。我还通过使用 config.yml 中的语言环境和一些自定义的英语翻译,比如中文或西班牙语,为网站上显示的每个单词或短语实现了翻译。用户可以单击“英语”或“西班牙语”链接,所有内容都会被翻译成选定的语言,并且网站别名从 website.com/en 更改为 website.com/es。
我的下一步是:
我希望用户能够用英语或西班牙语注册。目前,在 mysql 数据库中该业务只有一个条目,并且仅存在网站文本的翻译。我希望用户能够为相同的字段输入英语数据和西班牙语数据,例如企业的“名称”、地址等。这可能需要 2 个具有不同语言环境和相同业务的条目。
我希望网站与当前存在的标签翻译与用户的翻译保持一致。这意味着当您选择“西班牙语”时,您将获得所有翻译成西班牙语和该业务的西班牙语行的内容。
我想使用我购买的语言域名 如果可能的话:Website.com、Website.es、Website.it 等。我希望有人在浏览器的地址栏中输入 website.it 并自动获取意大利语的所有内容。
我主要担心的是:
如果我使用可翻译的捆绑包,将为每个企业创建一个额外的行。它们将如何连接?我的意思是,ID 为 1234 的 X 业务将是西班牙语,而名称翻译为 Y 的同一个业务将具有 ID 1235。 symfony2 如何知道这两个业务在不同的语言环境中是同一个业务?
连接的表会发生什么?用户表链接到业务表,业务表链接到组表。如果我只对 Business 表使用可翻译的扩展,它将如何影响其他的?