【发布时间】:2013-11-26 09:29:24
【问题描述】:
我是Yii的初学者,所以我问这个问题。
我有三个不同的表。
第一个表
第一个表是language(id, language_name)
// id 是主键。
第二张表
第二个表是verse(id, topic_id, surah_id, verse_text)
// id为主键,
第三张桌子
第三张桌子是verse_translations(id, verse_id, language_id, translations_text)
// id为主键,language_id为外键与语言表的引用,
// verse_id 是 verse 表的外键引用。
现在我的问题是。
我想获取特定verse_id 的可用翻译语言列表。 ?为此,我想在 verse 模型文件中建立关系,这将在我的视图中返回可用的语言,那么如何在视图中获得结果。?如果发生任何变化,verse 模型、视图和控制器会发生什么变化。
我已经写了下面的 MySQL 查询。
SELECT language.language_name from language
Inner Join verse_translations ON verse_translations.language_id = language.id
Where verse_translations.verse_id = 1
但我在 Yii 中需要这个。
我已经通过gii代码生成器生成了诗歌模型。
My Verse 模型关系函数。
public function relations()
{
return array(
'sorah' => array(self::BELONGS_TO, 'Sorah', 'sorah_id'),
'topic' => array(self::BELONGS_TO, 'Topic', 'topic_id'),
'verseFeedbacks' => array(self::HAS_MANY, 'VerseFeedback', 'verse_id'),
'verseImages' => array(self::HAS_MANY, 'VerseImages', 'verse_id'),
'verseLinks' => array(self::HAS_MANY, 'VerseLinks', 'verse_id'),
'verseTafseers' => array(self::HAS_MANY, 'VerseTafseer', 'verse_id'),
'verseTranslations' => array(self::HAS_MANY, 'VerseTranslations', 'verse_id'),
'language_name' => array(self::HAS_MANY, 'Language', 'id'),
);
}
【问题讨论】: