/** * @return \yii\db\ActiveQuery */ public function getViewedPosts() { return $this->hasMany(Post::className(), ['id' => 'post_id'])->viaTable(PostViewed::tableName(), ['user_id' => 'id']); }
/** * @return \yii\db\ActiveQuery */ public function getPostViewed() { return $this->hasOne(PostViewed::className(), ['post_id' => 'id'])->onCondition(['user_id' => Yii::$app->user ? Yii::$app->user->id : null])->inverseOf('post'); }