嘿,有一个页面允许企业向客户(个人和其他企业)发送发票。 Receiver 输入字段允许用户选择将发票发送给哪个客户。目前下拉列表列出了企业,但我们希望该列表也包括个人(用户模型/表)。因此,如果帐户(帐户模型/表)没有公司名称,则显示用户的用户名。
下面是我试图让它工作的尝试,没有给出错误,但没有在下拉列表中显示任何内容。我怎样才能实现我们想要的?
发票 Controller :
$name = "";
if ('Account.company_name' != null) {
$name = 'Account.company_name';
} else {
$name = 'User.username';
}
$accounts2 = $this->User->find('list', array(
'fields' => array('account_id'), 'conditions' => array(
'id' => $this->Auth->user('id'))));
$accounts = $this->User->Relationship->find('list', array(
'fields' => array('receiver_id'),
'conditions' => array('sender_id' => $accounts2)));
$receivername = $this->Account->find('list', array(
'fields' => array($name),
'conditions' => array(
'id' => $accounts)));
查看:
echo $this->Form->input('receiver_id', array(
'label' => 'Receiver: ',
'type' => 'select',
'options' => $receivername));
最佳答案
'Account.company_name' != null
显然始终为真,因为字符串不为空。所以
if ('Account.company_name' != null) {
$name = 'Account.company_name';
} else {
$name = 'User.username';
}
始终执行 $name = 'Account.company_name';
关于mysql - CakePHP 下拉列表用户名和公司名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11897402/