2015-09-07 64 views
0

我第一次使用Yii2框架,試圖在一個項目中實現它。從控制器中的相關表中提取值

我有客戶在這裏我想也顯示客戶的公司旁邊的客戶姓名的下拉列表。

客戶和公司表是相關的。下面是它看起來像在客戶模式:

public function getCompany() 
{ 
    return $this->hasOne(Company::className(), ['id' => 'company_id']); 
} 

所以我現在要形成一個包含客戶姓名,電子郵件,電話和公司名稱的下拉列表。姓名,電子郵件和電話屬於一張桌子,所以將它們拉在一起沒有問題。以下是它在Customer模型中的樣子:

public function getfullInfo() 
    { 
      return $this->name.' '.$this->phone.' '.$this->email; 
    } 

我不太瞭解這個框架的邏輯。我如何在上面的代碼中提取公司名稱?

謝謝你們。

+0

添加「$這個 - >公司 - >名稱」給出了一個錯誤「試圖獲得非對象的屬性」 – Marat

+0

嘗試使用關係名。可能有幫助。 –

+0

我認爲'$ this-> company-> name'的問題是有時存在'$ this-> company'(是一個對象),有時它不會,在這種情況下'hasOne()'返回'false '。 – Beowulfenator

回答

0

下面是正確的代碼:

public function getfullInfo() 
    { 
      return $this->name.' '.$this->phone.' '.$this->email.' '.$this->company['name']; 
    } 

這是那麼容易,我已經浪費了太多時間在這。

相關問題