2016-06-15 3 views
1

Я начал изучать python-django, и я хотел бы создать мое первое приложение django. Я следую учебнику Django 1.8. В моем проекте «mysite» есть исходная папка «опросы». В папке есть модуль «views.py», где определена функция «индекс». И есть "urls.py" Файл:Написание вашего первого приложения Django, ошибка с. import views

from django.conf.urls import url 

from . import views 

urlpatterns = [ 
    url(r'^$', views.index, name='index'), 
] 

Сейчас я получаю сообщение об ошибке:

Traceback (most recent call last): 
File "/home/ukasz/Pulpit/Python/mysite/polls/urls.py", line 3, in <module> 
from . import views 
SystemError: Parent module '' not loaded, cannot perform relative import 

Edit: Обновление с новой информацией, предоставленной woljako в ответ

мой MySite/ursl.py:

from django.conf.urls import include, url 
from django.contrib import admin 

urlpatterns = [ 
url(r'^polls/', include('polls.urls')), 
url(r'^admin/', admin.site.urls), 
] 

и я получаю ERR или:

Traceback (most recent call last): 
    File "/home/ukasz/Pulpit/Python/mysite/mysite/urls.py", line 20, in <module> 
    url(r'^polls/', include('polls.urls')), 
    File "/usr/local/lib/python3.5/dist-packages/django/conf/urls/__init__.py", line 52, in include 
urlconf_module = import_module(urlconf_module) 
File "/usr/lib/python3.5/importlib/__init__.py", line 126, in import_module 
return _bootstrap._gcd_import(name[level:], package, level) 
File "<frozen importlib._bootstrap>", line 986, in _gcd_import 
File "<frozen importlib._bootstrap>", line 969, in _find_and_load 
File "<frozen importlib._bootstrap>", line 944, in _find_and_load_unlocked 
File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed 
File "<frozen importlib._bootstrap>", line 986, in _gcd_import 
File "<frozen importlib._bootstrap>", line 969, in _find_and_load 
File "<frozen importlib._bootstrap>", line 956, in _find_and_load_unlocked 
ImportError: No module named 'polls' 

Я добавил к INSTALLED_APPS приложение опросом, но все же это не помогло

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'polls', 
] 
+0

in 'из. import views 'пытается заменить' .' 'mysite.polls' или' .polls' – sheshkovsky

+0

спасибо, это работает, но у меня все еще проблема, теперь с * mysite/urls.py * – woljako

+1

В чем проблема? – sheshkovsky

ответ

1

Есть несколько вещей, которые могут вызвать это. У меня есть два возможных решения, которые пока не упоминаются.

  1. Попробуйте заменить url(r'^polls/', include('polls.urls')), с url(r'^polls/', include('mysite.polls.urls')),
  2. запомнили вы включить __init__.py файл в папке polls? Это необходимо для импорта. См. docs для справки. Просто создайте пустой файл с именем __init__.py. Обратите внимание на двойные подчеркивания.

Пожалуйста, дайте мне знать, если это решает проблемы.

+1

первое решение работает, спасибо за помощь – woljako

+0

Добро пожаловать! Пожалуйста, примите, если правильный ответ :) –

+0

ehhh, появляется другая проблема, текущая ошибка: django.core.exceptions.ImproperlyConfigured: запрошенный параметр DEFAULT_INDEX_TABLESPACE, но настройки не настроены. Вы должны либо определить переменную среды DJANGO_SETTINGS_MODULE, либо вызвать параметры settings.configure() перед доступом к настройкам. – woljako

0

Попробуйте зарегистрировать опросы в своих приложениях в settings.py. Что-то вроде этого: enter image description here

+0

по-прежнему та же проблема – woljako

Смежные вопросы