2017-01-19 2 views
-2

Я полный новичок в Django, и я безуспешно пытаюсь создать свою первую веб-страницу django с помощью всего лишь «Hello world». Я пытался несколько часов решить мою проблему, посмотрев в Интернете, но ни один из решений не работал для меня. Вот мой код: Я надеюсь, что я могу получить помощь здесь ...Django: ImportError; Нет модуля с именем urls

Вот мое дерево каталогов:

./ProjetArbre: AppliPageArbre arbre.db INIT .py manage.py ProjetArbre

./ProjetArbre/AppliPageArbre: admin.py INIT .py models.py tests.py views.py admin.pyc INIT .pyc models.pyc urls.py

./ProjetArbre/ProjetArbre: INIT .py settings.py urls.py wsgi.py INIT .pyc settings.pyc urls.pyc wsgi.pyc

Вот ProjetArbre/AppliPageArbre/urls.py :

from django.conf.urls.defaults import patterns,url 
from views import home 

urlpatterns=patterns('', 
    url(r'^home/$',home,name="home") 
) 

ProjetArbre/AppliPageArbre/views.py:

from django.shortcuts import render 
from django.http import HttpResponse 
# Create your views here. 
def home(request) : 
    #return HttpResponse("HelloWorld") 
    print 'HelloWorld' 

ProjetArbre/urls.py:

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

admin.autodiscover() 

urlpatterns = patterns('', 
    # Examples: 
    # url(r'^$', 'ProjetArbre.views.home', name='home'), 
    # url(r'^blog/', include('blog.urls')), 

    url(r'^admin/', include(admin.site.urls)), 
    url(r'^AppliPageArbre/', include('ProjetArbre.AppliPageArbre.urls')), 
) 

И, наконец, ProjetArbre/ProjetArbre/settings.py:

""" Django settings for ProjetArbre project. 

For more information on this file, see https://docs.djangoproject.com/en/1.6/topics/settings/ 

For the full list of settings and their values, see https://docs.djangoproject.com/en/1.6/ref/settings/ """ 

# Build paths inside the project like this: os.path.join(BASE_DIR, ...) import os BASE_DIR = os.path.dirname(os.path.dirname(__file__)) 


# Quick-start development settings - unsuitable for production 
# See https://docs.djangoproject.com/en/1.6/howto/deployment/checklist/ 

# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = 'v%!t3(w*fr)[email protected]+o2(_0*d0&[email protected]^' 

# SECURITY WARNING: don't run with debug turned on in production! DEBUG = True 

TEMPLATE_DEBUG = True 

ALLOWED_HOSTS = [] 


# Application definition 

INSTALLED_APPS = (
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'AppliPageArbre',) 

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware',) 

ROOT_URLCONF = 'urls' #simplement urls ? 

WSGI_APPLICATION = 'ProjetArbre.wsgi.application' 


# Database 
# https://docs.djangoproject.com/en/1.6/ref/settings/#databases 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.sqlite3', 
     'NAME': os.path.join(BASE_DIR, 'arbre.db'), 
    } } 

# Internationalization 
# https://docs.djangoproject.com/en/1.6/topics/i18n/ 

LANGUAGE_CODE = 'fr-fr' 

TIME_ZONE = 'Europe/Paris' 

USE_I18N = True 

USE_L10N = True 

USE_TZ = True 


# Static files (CSS, JavaScript, Images) 
# https://docs.djangoproject.com/en/1.6/howto/static-files/ 

STATIC_URL = '/static/' 

Я получаю ошибку на http://localhost:8000/AppliPageArbre/home является:

ImportError at /AppliPageArbre/home 

No module named urls 

Request Method:  GET 
Request URL: http://localhost:8000/AppliPageArbre/home 
Django Version:  1.6 
Exception Type:  ImportError 
Exception Value:  

No module named urls 

Exception Location:  /home/eisti/Dev/Environnement/local/lib/python2.7/site-packages/django/utils/importlib.py in import_module, line 40 
Python Executable: /home/eisti/Dev/Environnement/bin/python 
Python Version:  2.7.12 
Python Path:  

['/home/eisti/Dev/ProjetArbre', 
'/home/eisti/Dev/Environnement/lib/python2.7', 
'/home/eisti/Dev/Environnement/lib/python2.7/plat-x86_64-linux-gnu', 
'/home/eisti/Dev/Environnement/lib/python2.7/lib-tk', 
'/home/eisti/Dev/Environnement/lib/python2.7/lib-old', 
'/home/eisti/Dev/Environnement/lib/python2.7/lib-dynload', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-x86_64-linux-gnu', 
'/usr/lib/python2.7/lib-tk', 
'/home/eisti/Dev/Environnement/local/lib/python2.7/site-packages', 
'/home/eisti/Dev/Environnement/lib/python2.7/site-packages'] 

Server time: jeu, 19 Jan 2017 18:29:34 +0100 

Я использую Django 1.6 Спасибо заранее ваша помощь ...

+0

Поскольку вы только что начали использовать django, вы должны использовать поддерживаемую версию, для этой конкретной ошибки есть несколько дубликатов, что произошло, когда вы пробовали свои решения? – Sayse

+0

Почему вы используете Django 1.6, когда последний составляет 1.10? – Inconnu

+0

У меня такая же ошибка или другие ошибки. Я попытался установить разные версии django, добавить «» в разных местах, изменить некоторые пути с именем моего проекта или нет ... Я не нашел решения, которое сработало для меня. Я использую 1.6, потому что книга, которую я изучаю, устарела, и их код не работает с django 1.10 – Spoon

ответ

-1

Мне удалось решить эту проблему, прочитав еще один учебник по Django 1.10. Спасибо :)

Теперь у меня есть еще одна проблема: в models.py, у меня есть следующие классы, например:

class Profil(models.Model): 
    sexe = models.CharField(max_length=1, choices=genre_choix,default="N") 
    id_profil = models.AutoField(auto_created=True, primary_key=True, serialize=False) 
    famille = models.ForeignKey(Famille, default=0, blank=True,unique=False,null=True) 
    prenom = models.CharField(max_length=30) 
    prenom2 = models.CharField(max_length=30,blank=True) 
    nom_famille = models.CharField(max_length=30) 
    nom_jeune_fille = models.CharField(max_length=30,blank=True) 
    Date_anniv = models.DateField(blank=True, null=True) 
    mort = models.DateField(blank=True, null=True) 
    travail = models.CharField(max_length=25, default="", blank=True) 
    information = models.TextField(default="", blank=True) 
    profil_picture = models.FileField(blank=True) 

    def __str__(self): 
     return str(self.prenom) 



class Couple(models.Model): 
    p1 = models.ForeignKey("Profil", related_name='+') 
    p2 = models.ForeignKey("Profil", related_name='+') 
    marriage = models.DateField(default="", blank=True,null=True) 
    divorce = models.DateField(default="", blank=True,null=True) 

    def __str__(self): 
     return str(self.p1.prenom+"<3"+self.p2.prenom) 

И я хотел бы, что каждый раз, когда я создаю новый Profil, пара создается с p1 = профилем, который я только что создал, и p2 = ложным профилем с именем?? вместо имени. Однако я не знаю, как это сделать из-за двух внешних ключей ...

+0

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

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