Локально я использую sqllite3 в качестве базы данных, но в производстве я использую MySQL.Когда я переместил свой проект в производство, я столкнулся с этой ошибкой:
...
File "S:\Python27\lib\site-packages\django\templatetags\i18n.py", line 46, in
render
langs = self.languages.resolve(context)
File "S:\Python27\lib\site-packages\django\template\base.py", line 653, in res
olve
value = self._resolve_lookup(context)
File "S:\Python27\lib\site-packages\django\template\base.py", line 692, in _re
solve_lookup
raise VariableDoesNotExist("Failed lookup for key [%s] in %r", (bit, current
)) # missing attribute
VariableDoesNotExist: Failed lookup for key [LANGUAGES] in u'[{}, {}, {}]'
Я использую i18n
от django. Есть идеи, откуда это исходит?Google мало что сообщил, а также какие данные было бы полезно посмотреть для отладки?Я указал мою локальную тестовую среду на производственную БД и получил ту же ошибку.
Моя ЯЗЫКОВАЯ переменная в settings.py:
LANGUAGES = (
('en',gettext('English')),
('fr',gettext('French')),
)
РЕДАКТИРОВАТЬ С включенной отладкойЯ получаю сообщение об ошибке:
Caught OperationalError while rendering: (1242, 'Subquery returns more than 1 row')
на линии {% for f in frames %}
Моя модель кадра:
@I18n('title','description')
class Collection(models.Model):
title = models.CharField(max_length=255)
description = models.CharField(max_length=255)
order = models.IntegerField(default=100)
image = models.ImageField(upload_to="collection/images",null=True)
rollover = models.ImageField(upload_to="collection/images",null=True,blank=True)
publish = models.BooleanField(default=True)
def __unicode__(self):
return self.title
@I18n('title')
class Frame(models.Model):
title = models.CharField(max_length=255)
collection = models.ManyToManyField(Collection)
order = models.IntegerField(default=100)
image = models.ImageField(upload_to="frame/images")
rollover = models.ImageField(upload_to="frame/images",null=True,blank=True)
publish = models.BooleanField(default=True)
def __unicode__(self):
return self.title
РЕДАКТИРОВАТЬ # 2
Трудные строки MySQL, которые не работают в SQLite
SELECT `FrontEnd_article`.`id`, `FrontEnd_article`.`title_fr`, `FrontEnd_article`
.`title_en`, `FrontEnd_article`.`text_fr`, `FrontEnd_article`.`text_en`,
`FrontEnd_article`.`date`, `FrontEnd_article`.`image`, `FrontEnd_article`.`image_text`,
`FrontEnd_article`.`can_comment`, `FrontEnd_article`.`order`,
`FrontEnd_article`.`publish` FROM `FrontEnd_article` INNER JOIN
`FrontEnd_article_frames` ON (`FrontEnd_article`.`id` =
`FrontEnd_article_frames`.`article_id`) WHERE `FrontEnd_article_frames`.`frame_id` =
(SELECT U0.`id` FROM `FrontEnd_frame` U0 INNER JOIN `FrontEnd_frame_collection` U1 ON
(U0.`id` = U1.`frame_id`) WHERE (U1.`collection_id` = 1 AND U0.`publish` = True ))
ORDER BY `FrontEnd_article`.`date` DESC
Еще раз спасибо за помощь!