cakephp菜鸟提出的简单问题:
我有两个模型,玩家和团队。
Team 有一个id (int) 和一个cool_name (varchar)。
玩家有一个 id (int)、一个 Cool_name (varchar) 和一个团队表引用 team_id (int)。
Cool_name 而不是 name 因为我没有英文表,所以我不能使用字段“name”。
所以,一个球队有很多球员,一个球员属于球队。
我的播放器型号:
class Player extends AppModel {
var $name = 'Player';
var $belongsTo = array('Team');
}
(团队模型里面除了名字什么都没有)
玩家控制器:
class PlayersController extends AppController {
var $name = 'Players';
function add() {
$this->set('teams', $this->Player->Team->find('list'));
//then save...
}
在播放器的添加视图中:
//...
echo $form->input('squadra_id');
//...
好的,我有一个选择,其中包含团队 ID;我不需要 id,而是团队的名称,然后保存 id:类似于(在 html 中)
<select name="data[Player][team_id]" id="PlayerTeamId">
<option value="1">Cool Name 1</option>
<option value="2">Cool Name 2</option>
<!-- -->
<option value="{team id}">{team cool name}</option>
</select>
我能怎么做?
代替
$this->set('teams', $this->Player->Team->find('list'));
put this
$this->set('teams', $this->Player->Team->find('list', array('fields' => array('cool name') ) ) );