首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Symfony2表单。是否使用2个表单域和3个表为第四个表的记录返回一个id?

Symfony2表单。是否使用2个表单域和3个表为第四个表的记录返回一个id?
EN

Stack Overflow用户
提问于 2012-05-17 17:05:57
回答 1查看 261关注 0票数 0

我有3个表,提供地理位置数据(简化为这篇文章)。

代码语言:javascript
复制
countries:
  id:
  name:

country_regions:
  id:
  country_id: (fk to countries:id)
  name:

country_region_cities:
  id:
  country_region_id: (fk to country_regions:id)
  postal_code:
  name:

当有人去添加地址时,我希望他们选择一个国家并输入他们的邮政编码。由于世界上的多个城市可能有相同的邮政编码,这可以让我们找出它们在哪里。在country_region_cities表中。使用类似于下面这样的查询。

代码语言:javascript
复制
SELECT 
  crc.id as crc_id
FROM
  countries c,
  country_regions cr,
  country_region_cities crc
WHERE 
  c.id=231 and
  crc.postal_code='02199' and
  cr.country_id = c.id and
  cr.id = crc.country_region_id

将在crc.id上存储在任何需要地址数据的表中,而不是存储完整地址。我不确定如何将这两个字段(country_id和postal_code)添加到表单中,并将country_region_city:id存储在需要它的表的数据库字段中。

我感觉我需要创建一个AbstractType并将其链接到需要存储关系的表单,但是我是否需要为涉及的其他两个表创建更多的AbstractTypes?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-22 21:54:09

实现这一点的方法是通过Symfony食谱中描述的自定义数据转换器对象。

http://symfony.com/doc/current/cookbook/form/data_transformers.html

一旦我意识到这一点,我在几个小时内就完成了任务,并且它正在愉快地工作!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10632699

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档