在django 1.3上使用django-multilingual-ng进行编辑时,管理页面中出错

时间:2011-05-06 12:42:54

标签: django multilingual django-multilingual

我试图将我的应用程序切换为使用多语言-ng,但不幸的是,文档和FAQ在线很少。我希望有人能够说出我的练习发生了什么,

以下是我的模特

class Main(models.Model):
    """ Main Class for all categories """
    slug       = models.SlugField()
    is_active  = models.BooleanField(default=True)
    site       = models.ForeignKey(Site)
    parent     = models.ForeignKey('self', blank=True, null=True)

    class Translation(TranslationModel):
        title               = models.CharField(max_length=100)
        label               = models.CharField(max_length=100, blank=True, null=True)
        description         = models.TextField(blank=True, null=True)
        disclaimer          = models.TextField(blank=True, null=True)
    class Meta:
        unique_together = (("slug", "parent"))

    def __unicode__(self):
        return self.title if self.title is not None else _("No translation")

以下是我的admin.py

class MainAdmin(MultilingualModelAdmin):
    ''' Multilingual interface for Main category '''

class ListAdmin(MultilingualModelAdmin):
    ''' Multilingual interface for Main category '''



admin.site.register(Main, MainAdmin)
admin.site.register(List, ListAdmin)

当我访问我的管理面板时,我可以看到模型,项目列表,添加新项目但是当我尝试编辑现有项目或删除一个时我得到了跟随错误

  Environment:


Request Method: GET
Request URL: http://mazban.com/admin/category/main/1/

Django Version: 1.3
Python Version: 2.6.1
Installed Applications:
['django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.contrib.admin',
 'django.contrib.admindocs',
 'compressor',
 'django.contrib.gis',
 'multilingual',
 'mazban.lib.apps.core',
 'mazban.lib.apps.gis',
 'mazban.apps.global',
 'mazban.apps.listing',
 'mazban.apps.listing.post',
 'mazban.apps.listing.home',
 'mazban.apps.listing.engine',
 'mazban.apps.listing.category']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.locale.LocaleMiddleware',
 'mazban.lib.MiddleWare.custom.RequestIsMobile')


Traceback:
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/core/handlers/base.py" in get_response
  111.                         response = callback(request, *callback_args, **callback_kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/contrib/admin/options.py" in wrapper
  307.                 return self.admin_site.admin_view(view)(*args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/utils/decorators.py" in _wrapped_view
  93.                     response = view_func(request, *args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/views/decorators/cache.py" in _wrapped_view_func
  79.         response = view_func(request, *args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/contrib/admin/sites.py" in inner
  197.             return view(request, *args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/multilingual/admin.py" in wrapped
  31.         resp = func(cls, request, *args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/multilingual/admin.py" in change_view
  277.         return super(MultilingualModelAdmin, self).change_view(*args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/utils/decorators.py" in _wrapper
  28.             return bound_func(*args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/utils/decorators.py" in _wrapped_view
  93.                     response = view_func(request, *args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/utils/decorators.py" in bound_func
  24.                 return func(self, *args2, **kwargs2)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/db/transaction.py" in inner
  217.                 res = func(*args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/contrib/admin/options.py" in change_view
  947.         obj = self.get_object(request, unquote(object_id))
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/contrib/admin/options.py" in get_object
  451.             return queryset.get(pk=object_id)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/db/models/query.py" in get
  341.         clone = self.filter(*args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/db/models/query.py" in filter
  550.         return self._filter_or_exclude(False, *args, **kwargs)
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/db/models/query.py" in _filter_or_exclude
  568.             clone.query.add_q(Q(*args, **kwargs))
File "/users/mo/Projects/python-envs/mazban/lib/python2.6/site-packages/django/db/models/sql/query.py" in add_q
  1172.                             can_reuse=used_aliases, force_having=force_having)

Exception Type: TypeError at /admin/category/main/1/
Exception Value: add_filter() got an unexpected keyword argument 'force_having'

3 个答案:

答案 0 :(得分:1)

不要使用django-multilingual-ng,因为它不再受支持,会给你带来很多麻烦。 django-multilingual-ng的作者开创了一个名为django-nani的新项目。它应该是可靠的并且与Django 1.3兼容。

至于我,这个问题没有在Django 1.2.4上显示,所以一旦你完成Django 1.2.5 release notes,你可能想要回到那个版本。

答案 1 :(得分:1)

我从最新版本安装并且错误消失了:

$ pip install git+https://github.com/ojii/django-multilingual-ng.git

虽然使用此版本时错误消失了,但仍然表示它不受支持。我非常倾向于回滚到Django 1.2.4,但我仍然试图解决这个问题。

如前所述,django-nani项目很有希望,但仍处于alpha阶段。在今天的修订中,我找不到使用任何类型的模型关系的方法。他们will be working on it soon

答案 2 :(得分:0)

我遇到了同样的问题,从1.2.4升级到1.2.7中的新安全版本。 Ng已经在使用中,并且无法换出,即使已经删除了对它的支持。就是我们生活的世界。我在django查询系统中找不到关于force_having角色的任何文档。

很高兴他们正在开发新系统。如果有人对force_having有任何了解,我们将不胜感激。