Хейстек несовместим с Django 1.4? - PullRequest
7 голосов
/ 01 апреля 2012

Я только что обновил свой django до 1.4. У меня проблемы с приложением Хейстек. Кроме того, я попытался обновить стог сена до последней стабильной версии, но у меня все еще есть проблемы. У кого-нибудь были ошибки в тезисах? Как я могу решить это?

Я получаю следующие ошибки.

Когда я захожу на любую страницу:

cannot import name MAX_SHOW_ALL_ALLOWED haystack\admin.py in <module>, line 2

и

# python manage.py rebuild_index
django.core.exceptions.ImproperlyConfigured: Error importing template source loader
django.template.loaders.app_directories.load_template_source:
    "'module' object has no attri bute 'load_template_source'"

Спасибо

1 Ответ

6 голосов
/ 01 апреля 2012

проблема в файле haystack / admin.py. Попробуйте сделать следующее:

  1. удалить импорт для MAX_SHOW_ALL_ALLOWED
  2. до занятий SearchChangeList добавить метод:

    def list_max_show_all(changelist):
        """
        Returns the maximum amount of results a changelist can have for the
        "Show all" link to be displayed in a manner compatible with both Django
        1.4 and 1.3. See Django ticket #15997 for details.
        """
        try:
            # This import is available in Django 1.3 and below
            from django.contrib.admin.views.main import MAX_SHOW_ALL_ALLOWED
            return MAX_SHOW_ALL_ALLOWED
        except ImportError:
            return changelist.list_max_show_all
    
  3. в SearchChangeList.get_results() изменить can_show_all на

    can_show_all = result_count <= list_max_show_all(self)
    

Проверьте эту ветку для получения дополнительной информации о проблеме.

...