php - Yii - 外键 - 访问数据

标签 php mysql yii

我刚刚开始接触 Yii,发现它有点令人困惑(至少与 Cake 或 CI 相比)。我想知道以下几点:

1) 如果我有一个“添加电台”表单(使用电台模型)。在表单中,将有一个“公司”下拉列表(来自公司模型)。站点属于公司(站点有一个外键company_id)。

如何生成下拉列表?用于提取数据的 Php 代码应该存储在模型中,还是应该只是表单中的一行?

2)我还有以下数据库表:

station
- id
- location_id

location
- id
- state_id
- city_id

state
- id
- state

city
- id
- city

现在,在与上面相同的表单中,我想要一个“位置”字段,然后是城市和州的 2 个下拉列表。无论用户选择什么,都将作为外键对存储在位置表中。我该如何去做呢?

最佳答案

1)看看我对这个问题的回答,了解有关downdown的提示(关键是CHtml::listData):

Does CDbcommand method queryAll() in yii return indexed entries only?

2)location只是statecity之间的关系表吗?然后只需执行 MANY_MANY relation()在您的城市和州模型中。 AdvancedAR扩展使管理 MANY_MANY 关系变得更加轻松。

否则,只需为每个表设置一个模型,然后添加适当的 relations()它们之间。然后在表单发布操作中,创建一个新位置并设置 state_idcity_id,然后 save() 它。

关于php - Yii - 外键 - 访问数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5183650/

相关文章:

php - 返回的 XML 响应有空格

PHP While 在另一个内部循环,并且第一个 while 不返回其他值

php - 正则表达式整个输入匹配模式

PHP Regex去除多余的标点符号

c# - 如何使用 Dapper-Extensions 自动绑定(bind)下划线表/列名称?

php - Yii Blog 演示,评级系统在评级时不更新数据库

php - 分页在 Yii 框架中不起作用

php - 搜索关系数据

php - Laravel - 捕获 cURL 异常的正确方法

php - 如何在 Propel 1.6 中按日期过滤日期时间列?