hasOne(User::className...)}"으로 명령문을 수정합니다."/> hasOne(User::className...)}"으로 명령문을 수정합니다.">

 >  기사  >  PHP 프레임워크  >  yii2 hasone이 오류를 보고하면 어떻게 해야 합니까?

yii2 hasone이 오류를 보고하면 어떻게 해야 합니까?

藏色散人
藏色散人원래의
2020-07-20 10:46:572025검색

Yii2 hasone 오류 해결 방법: 먼저 설명서에 따라 해당 파일을 연 다음 명령문을 "function getUser(){return $this->hasOne(User::className...)}"으로 수정합니다.

yii2 hasone이 오류를 보고하면 어떻게 해야 합니까?

yii2 hasOne 관계 작동 오류

특정 문제:

2개의 테이블이 있습니다: 사용자 및 즐겨찾기:

users table
favorite

이제 "즐겨찾기" 모델에서 아래와 같이 설정했습니다. 관계 표시됨

public function getUser()
{
    return $this->hasOne(User::className(), ['id', 'user_favorited']);
}

컨트롤러에서 사용자 즐겨찾기 목록을 찾았습니다

public function actionGetList()
{
    $favorite = Favorite::find()->where([
              'user_favoriting' => Yii::$app->user->id
          ])->all();
    foreach ($favorite as $key => $item) {
        # code...
        echo "<pre class="brush:php;toolbar:false">"; var_dump($item->user); echo "<br/>"; die(&#39;123&#39;);
    }
    return $favorite;
}

그런데 이 작업을 요청하면 오류가 발생합니다

Column not found: 1054 Unknown column &#39;0&#39; in &#39;where clause&#39;\nThe SQL being executed was: SELECT * FROM `users` WHERE (`0`, `1`) IN ((12, 80))",

도와주세요!

권장: "yii Tutorial"

해결책:

문서에 따르면 다음을 사용해야 합니다:

public function getUser()
{
    return $this->hasOne(User::className(), [&#39;id&#39; => &#39;user_favorited&#39;]);
}

위 내용은 yii2 hasone이 오류를 보고하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.