* @return \yii\db\ActiveQuery */ public function getRelease() { return $this->hasOne(Release::className(), ['id' => 'release_id']); } /** * @return \yii\db\ActiveQuery */ public function getFile() { return $this->hasOne(File::className(), ['id' => 'file_id']); } /** * @return \yii\db\ActiveQuery */ public function getTags() { return $this->hasMany(Tag::className(), ['id' => 'tag_id'])->viaTable('track_tag', ['track_id' => 'id']); } /** * @return string */ public function getComname() { return Utils::mergeNames($this->original_name, $this->latin_name); } } Event::on(Track::className(), Track::EVENT_BEFORE_DELETE, function ($event) { $event->sender->file->delete(); });
/** * @return \yii\db\ActiveQuery */ public function getTracks() { return $this->hasMany(Track::className(), ['release_id' => 'id']); }
/** * @return \yii\db\ActiveQuery */ public function getTracks() { return $this->hasMany(Track::className(), ['id' => 'track_id'])->viaTable('track_tag', ['tag_id' => 'id']); }
/** * @return \yii\db\ActiveQuery */ public function getTrack() { return $this->hasOne(Track::className(), ['file_id' => 'id']); }