Моя организация разрабатывает новую платформу публикации на основе Wagtail как бэкэнда CMS. У нас есть обширный собственный опыт работы с базами данных MS SQL, но рядом с ними нет Postgres или MySQL, поэтому предпочли бы использовать MS SQL (в частности, SQL Azure), которые, по-видимому, предлагают документы Wagtail.Рекомендации по устранению неполадок Требуется совместимость с Wagtail/SQL Azure
У меня есть экземпляр Wagtail и установлены бэкэнд Django (https://pypi.python.org/pypi/django-pyodbc-azure), который утверждает, что поддерживает SQL Azure. Я настроил настройки подключения к базе данных в settings.py.
Я могу успешно выполнять миграции и создавать суперпользователя, поэтому я достаточно уверен, что подключение к базе данных является хорошим.
я тогда можно перейти к странице трясогузка входа в http://localhost:8000/admin, но сразу же после входа в систему с учетными данными, предоставленные сценарии createsuperuser, я получаю следующее сообщение об ошибке:
('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near 'LIMIT'. (102) (SQLExecDirectW)")
Казалось бы, что сама трясогузка использует это ключевое слово LIMIT, которое не поддерживается в MS SQL. Каков мой лучший подход к устранению неполадок и попытка разрешить это поведение? Или я прячусь ни к чему?
обижая SQL:
SELECT wp.* FROM wagtailcore_pagerevision wp
JOIN (SELECT max(created_at) AS max_created_at,
page_id FROM wagtailcore_pagerevision WHERE user_id = %s
GROUP BY page_id ORDER BY max_created_at DESC LIMIT %s) AS max_rev ON max_rev.max_created_at = wp.created_at ORDER BY wp.created_at DESC
Нарушитель бит SQL, как представляется:. 'ВЫБРАТЬ WP * ОТ wagtailcore_pagerevision в.ч. Join ( SELECT MAX (created_at) КАК max_created_at, PAGE_ID ОТ wagtailcore_pagerevision ГДЕ идентификатор_пользователя =% s GROUP BY PAGE_ID ORDER BY max_created_at DESC LIMIT% s ) AS max_rev ON max_rev.max_created_at = wp.created_at ORDER BY wp.created_at DESC' из wagtail/wagtailadmin/views/home.py – nm76
SQLServer не имеет 'LIMIT' keyword.use' TOP' вместо – TheGameiswar
Обратите внимание, что Wagtail официально не поддерживает SQL Server в настоящее время. В прошлом пользователи успешно получили Wagtail, работающий с SQL Server, и предоставили исправления для обеспечения совместимости с MS SQL, но в настоящее время нет постоянного тестирования QA, чтобы обеспечить его совместимость. К сожалению, похоже, что этот запрос проскользнул во время Wagtail 1.7 и до сих пор не сообщается. – gasman