You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Сегодня при создании нового сайта обнаружил ошибку:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ...
Проблема оказалась в сложном префиксе таблицы, а именно он содержал дефис. Источником ошибки был код расширения, a именно строка 449 в файле ETaggableBehavior.php, но при анализе кода, я нашел строку 436 в которой была вставка кода {$this->getTagBindingTableName()} не обрамленная кавычками, после маленького вмешательства строчка стала выглядеть так:
'join' => "INNER JOIN `{$this->getTagBindingTableName()}` et ON t.{$this->tagTablePk} = et.{$this->tagBindingTableTagId}",
а ошибка исчезла.
The text was updated successfully, but these errors were encountered:
Вам виднее, я просто указал самый быстрый вариант для моего случая(с MySQL), но абсолютно согласен что он не подойдет для других РСУБД. Хотя в этом же документе строчкой выше(строка 435, на github это строка 449):
Сегодня при создании нового сайта обнаружил ошибку:
Проблема оказалась в сложном префиксе таблицы, а именно он содержал дефис. Источником ошибки был код расширения, a именно строка 449 в файле ETaggableBehavior.php, но при анализе кода, я нашел строку 436 в которой была вставка кода
{$this->getTagBindingTableName()}
не обрамленная кавычками, после маленького вмешательства строчка стала выглядеть так:а ошибка исчезла.
The text was updated successfully, but these errors were encountered: