2013-03-12 3 views
1

Я пытаюсь Django. Я собирался прочитать его документацию. Этого не было, мне нужно было его построить. Прочтите Readme в папке Django-1.5/doc, загрузите модуль Python документации Sphinx. Установил его с помощью easy_install - который был установлен на Python2.5 Не имеет значения. Просто нужно создавать документы, можете использовать Py2.5. Я делаю это, make html в папке /doc, и я получаю это:Ошибка синтаксиса в файле конфигурации - будущая функция unicode_literals не определена (Python, Django, Sphinx)

Running Sphinx v1.1.3 

Configuration error: 
There is a syntax error in your configuration file: future feature unicode_literals is not defined (conf.py, line 14) 

conf.py является файл в папке/DOC Джанго-1.5. Строка 14 это:

from __future__ import unicode_literals

Я искал почему, и на какой-то странице я увидел, что поддержка 2.5 была сброшена на будущем или я не знаю, что я не мог понять, на самом деле. Итак, я easy_install ed Sphinx to Python 2.7, надеясь, что это решит версию.

Затем я снова make html в папке/doc Django, и я получаю ту же ошибку сборки, что и указано выше. Как я могу сделать команду make делать из версии Sphinx с установленной версией Python 2.7?

Я просто хочу создать проклятые документы. Я люблю Python и все, но все эти установки пакетов - это боль в Windows.

+1

Я чувствую вашу боль, или, по крайней мере, до тех пор, пока не установил ubuntu, и тогда все мои боли исчезли. –

ответ

1

Sphinx создает документацию, часть которой составлена ​​из исходного кода, который может быть объектом интроспекции/частичного исполнения.

Поскольку __future__ не является модулем (не может «импортировать» его, за исключением случаев, когда это первая инструкция).

Так что я не думаю, что это ответит на ваш вопрос, но это логично и хорошо, так как это способ поддержать python 3k и препятствовать использованию незавершенных старых версий Python [1].

вам повезет некоторые хорошие народы уже скомпилированные документацию для вас:

Здесь до документации магистральной даты: http://media.readthedocs.org/pdf/django/latest/django.pdf

И здесь PDF к изданию 1.5: http://media.readthedocs.org/pdf/django/1.5.x/django.pdf

Если вы требуется версия html, вам придется использовать автономный считыватель: http://django.readthedocs.org/en/1.5.x/

Надеюсь, что он решает вашу проблему даже если он не отвечает на ваш вопрос.

Я полагаю, что ваша производственная среда НЕ будет окнами. В большинстве окон, созданных разработчиками django, будет использоваться cygwin или виртуальная машина для работы. Django и python предлагают потрясающие инструменты CLI. Эти инструменты CLI не могут быть потрясающими, если вы живете в аду CLI.

примечание: CLI -> Интерфейс командной строки.

  1. http://www.python.org/getit/releases/2.5.6/:>под политикой текущего выпуска, никаких проблем безопасности в Python 2.5 не будет исправлено больше.
0

Python 2.5 не принимает from __future__ import unicode_literals. Введите help("__future__") в приглашении Python, чтобы увидеть документы.

Как я могу сделать команду make сделать создание из установленной версии Sphinx с Python 2.7?

Вы можете попробовать указать опцию PYTHON, например, в Баш:

$ PYTHON=python2.7 make html 

В Windows это, вероятно:

T:\> set PYTHON=C:\path\to\Python27\python.exe 
T:\> make html 

Вы можете использовать setx установить переменную постоянно.


Вам не нужно создавать документацию, чтобы попробовать Django. Он доступен online или вы можете скачать его с помощью links provided by @christophe31.

Django 1.5 dropped support for Python 2.5.

+0

Я знаю, что мне не нужна «сборка документации». Я был просто напуган на это, скорее скажу, почему, черт возьми, вся эта документация, делающая шиизм, не работала над моей установкой. –

+0

И да. Я сделал «набор», установил его на Python 2.7, но все еще получил эту ошибку. Есть ли в любом случае, я могу знать, какая версия Python предназначена для команды 'make'? Я предполагаю, что он все еще работает на Python 2.5, если он извергает тот же самый материал. –