我收到以下SQL错误:
SQL Error: 1066: Not unique table/alias: 'I18n__name'
进行简单查找查询时。
关于可能造成这种情况的可能情况的任何想法? 我正在使用bindModel方法来检索与之相关的数据吗?
这是我的代码:
$this->Project->bindModel(array(
'hasOne' => array(
'ProjectsCategories',
'FilterCategory' => array(
'className' => 'Category',
'foreignKey' => false,
'conditions' => array('FilterCategory.id = ProjectsCategories.category_id')
))));
$prlist = $this->Project->find('all', array(
'fields' => array('DISTINCT slug','name'),
'conditions' => array('FilterCategory.slug !='=>'uncategorised')
))
答案 0 :(得分:1)
您尚未使用或初始化控制器中使用的所需表格/型号。使用var $uses = array('your_table_name');
答案 1 :(得分:0)
我没有直接回答我的问题。然而经过一些研究,我得出了以下结论。
我决定改变我的方法并停止使用cakephp中的翻译行为。 我发现了另一个名为i18n的行为,在处理相关模型时效果更好。你可以阅读它http://www.palivoda.eu/2008/04/i18n-in-cakephp-12-database-content-translation-part-2/#comment-1380 在cakephp书中它说:
“请注意,只有模型的字段 你是在意志上直接做
find
被翻译。通过附加的模型 协会不会被翻译 因为触发了回调 相关模型目前不是 支持“。
我不确定我是否做出了正确的选择但是我一直在努力让翻译行为在cakephp中运行,而这个解决方案至少使我正在运行的项目正常运作。