2016-10-22 4 views
0

Я только что начал проект django, но я не могу импортировать функцию из views.py. Я сделал некоторые проекты с очень похожими настройками с этой структурой, но без проблем. Я использую virtualenv (и он активирован), windows10, pycharm.Ошибка импорта в Django url.py

#urls.py 
from django.conf.urls import url 
from django.contrib import admin 

from WebShop.main_app import views 

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

#views.py 
def index(request): 
    return HttpResponse("<h1>Hi</h1>") 

#cmd 

    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\utils\autoreload.py", line 226, in wrapper 
    fn(*args, **kwargs) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\core\management\commands\runserver.py", line 121, in inner_run 
    self.check(display_num_errors=True) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\core\management\base.py", line 374, in check 
    include_deployment_checks=include_deployment_checks, 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\core\management\base.py", line 361, in _run_checks 
    return checks.run_checks(**kwargs) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\core\checks\registry.py", line 81, in run_checks 
    new_errors = check(app_configs=app_configs) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\core\checks\urls.py", line 14, in check_url_config 
    return check_resolver(resolver) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\core\checks\urls.py", line 24, in check_resolver 
    for pattern in resolver.url_patterns: 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\utils\functional.py", line 35, in __get__ 
    res = instance.__dict__[self.name] = self.func(instance) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\urls\resolvers.py", line 313, in url_patterns 
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\utils\functional.py", line 35, in __get__ 
    res = instance.__dict__[self.name] = self.func(instance) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\site-packages\django\urls\resolvers.py", line 306, in urlconf_module 
    return import_module(self.urlconf_name) 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\env\lib\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 958, in _find_and_load_unlocked 
    File "<frozen importlib._bootstrap>", line 673, in _load_unlocked 
    File "<frozen importlib._bootstrap_external>", line 665, in exec_module 
    File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed 
    File "C:\Users\b021l\Desktop\practice\django\WebShopProject\WebShop\WebShop\urls.py", line 19, in <module> 
    from WebShop.main_app import views 
ImportError: No module named 'WebShop.main_app' 

* Редактировать

Я также добавил virtualenv переводчику проектов в PyCharm.

кстати мой filestructure является основным:

-WebShopProject 
-env 
-WebShop 
    -WebShop 
    -__init__.py 
    -settings.py 
    -urls.py ..... 
    -main_app 
    -__init__.py 
    -views.py ... 

** обновление

до сих пор ничего .. Я переустановил питона, вновь начал проект, свежий virtualenv, выполненный virtualenv в качестве переводчика по умолчанию в PyCharm, по-прежнему ничего .. Попробовал поместить urls.py в мою папку «main_app» и включил его в «WebShop.urls.py» и угадал, что я не могу импортировать из той же папки.

* fixed Я не знаю, что произошло он только начал работать , может быть, это ошибка для окон:/хотя спасибо за ответы.

+0

Включили ли вы приложение в вашем 'INSTALLED_APPS' в вашем' settings.py' файла? Вы также можете попробовать «из представлений импорта WebShop» или «из представлений импорта main_app», но это зависит от вашей файловой структуры. – 1GDST

+0

Да, это в установленных приложениях. Ни один из этих двух импортных операций не работает. Я могу только набирать WebShop.main_app – Zozo

+0

Добавили ли вы 'WebShop.main_app,' на свой 'INSTALLED_APPS' или просто' main_app'?? – 1GDST

ответ

3

из вашей файловой структуры кажется, что вы должны сделать from main_app import views

+0

Я пробовал, что он не работает:/ – Zozo

+0

from main_app import views попробуйте эту надежду, это сработает – drigger

+0

Я пробовал, не работал – Zozo

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