Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Пути к файлам и папкам и прочие грабли. [RSS Feed]

#1 Сен. 16, 2008 06:24:08

PavelZ
От:
Зарегистрирован: 2008-09-07
Сообщения: 71
Репутация: +  0  -
Профиль   Отправить e-mail  

Пути к файлам и папкам и прочие грабли.

Переделываю сайт с php на Django, причём до меня там уже дописали что-то на Django, надо перевести остальное. Проблема в том, там стоит версия CVN 0.97… а заказчик не хочет её менять, он дал мне папку в которой сам под виндой делал свои дороботки, мол в ней и пиши. Самый интересный момент, что почти всё сделал (работало честное слово), осталось заставить правильно работать паджинатор.
Выходит релиз и у меня возникает жгучее желание обновить Django в своей рабочей папке. В итоге заставить работать не смог ругается
Error while importing URLconf ‘urls’: cannot import name template
отложил это дело на время. Заказчик потребовал работу. Откатил назад изменения, но ошибка повторилась, где какую закорючку поставил лишнюю не могу понять.
settings

# -*- coding: utf-8 -*-
# Django settings for project.

BASE_DIR = 'C:/django/proc'

DEBUG = True
TEMPLATE_DEBUG = DEBUG
TRANSLATE_CHARSET = True

ADMINS = (

)

MANAGERS = ADMINS

DATABASE_ENGINE = 'sqlite3' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = 'proc.db' # Or path to database file if using sqlite3.
DATABASE_USER = '' # Not used with sqlite3.
DATABASE_PASSWORD = '' # Not used with sqlite3.
DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3.
DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3.

# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be avilable on all operating systems.
# If running in a Windows environment this must be set to the same as your
# system time zone.
TIME_ZONE = 'Asia/Vladivostok'

# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
LANGUAGE_CODE = 'ru-ru'

SITE_ID = 1

# If you set this to False, Django will make some optimizations so as not
# to load the internationalization machinery.
USE_I18N = True

# Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
MEDIA_ROOT = BASE_DIR + '/media/'

# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
# Examples: "http://media.lawrence.com", "http://example.com/media/"
MEDIA_URL = BASE_DIR + '/media/'

# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
# trailing slash.
# Examples: "http://foo.com/media/", "/media/".
ADMIN_MEDIA_PREFIX = BASE_DIR + '/adminmedia/'

# Make this unique, and don't share it with anybody.
SECRET_KEY = '1zl6$$3gl7vqs(d-wd4#g4+&3a0u_c^4q)7sa$56(_z*7%pc-_'

# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.load_template_source',
'django.template.loaders.app_directories.load_template_source',
# 'django.template.loaders.eggs.load_template_source',
)

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.middleware.cache.CacheMiddleware',
'django.middleware.doc.XViewMiddleware',
'django.middleware.locale.LocaleMiddleware',
)

ROOT_URLCONF = 'urls'

TEMPLATE_DIRS = BASE_DIR + (
'/templates'
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.admin',
'templatetags',
'news',

)
urls
# -*- coding: utf-8 -*-
from django.conf import settings
from django.conf.urls.defaults import *

from news.views import *

urlpatterns = patterns('',
# Example:
# (r'^$', include('foo.urls')),

# Uncomment this for admin:
(r'^admin/', include('django.contrib.admin.urls')),

(r'^$', 'news.views.index'),
(r'^news/(?P<object_id>\d+)/$', 'news.views.news_the'),

(r'^receiv/$', 'news.views.receiv'),
(r'^history/$', 'news.views.history'),
(r'^officials/$', 'news.views.officials'),
(r'^structure/$', 'news.views.structure'),
(r'^pressa/$', 'news.views.pressa'),

(r'^control/$', 'news.views.control'),
(r'^control/(?P<object_id>\d+)/$', 'news.views.control_the'),

(r'^links/$', 'news.views.links'),
)


urlpatterns += patterns('',

(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
)



Отредактировано (Сен. 17, 2008 05:21:52)

Офлайн

#2 Сен. 16, 2008 07:17:32

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Пути к файлам и папкам и прочие грабли.

а news.views что не показали?



Офлайн

#3 Сен. 16, 2008 09:02:12

PavelZ
От:
Зарегистрирован: 2008-09-07
Сообщения: 71
Репутация: +  0  -
Профиль   Отправить e-mail  

Пути к файлам и папкам и прочие грабли.

Не думал, что ошибка может быть тут.

# coding: utf-8

import datetime

from django.core.mail import EmailMessage
from django.shortcuts import get_object_or_404, render_to_response
from django.http import HttpResponse, HttpResponseRedirect
from django.template import Context, loader
from django.newforms import *
from news.models import *

def index(request):
object_list = News.objects.order_by('-post_date')[:15]
t = loader.get_template('index.html')
c = Context({
'object_list': object_list,
})
return HttpResponse(t.render(c))

def news_the(request, object_id):
news = get_object_or_404(News, pk=object_id)
return render_to_response('news.html', {'news': news})

def receiv(request):
return render_to_response('receiv.html')

def history(request):
return render_to_response('history.html')

def officials(request):
return render_to_response('officials.html')

def structure(request):
return render_to_response('structure.html')

def pressa(request):
return render_to_response('pressa.html')

def control(request):
object_list = Control.objects.order_by('-post_date')[:15]
t = loader.get_template('control.html')
c = Context({
'object_list': object_list,
})
return HttpResponse(t.render(c))

def control_the(request, object_id):
control = get_object_or_404(Control, pk=object_id)
return render_to_response('text_control.html',
{'control': control})

def links(request):
return render_to_response('links.html')
И модели
# -*- coding: utf-8 -*-

import datetime

from django.db import models

class News(models.Model):

post_date = models.DateTimeField(u'Дата', default=datetime.datetime.now)
news_title = models.CharField(u'Заголовок', max_length=100, blank=True)
news_text = models.TextField(u'Новость кратко', blank=True)
news_ful_text = models.TextField(u'Текст сообщения', blank=True)
news_photo = models.ImageField(u'Фотография', upload_to='news/%Y/%m/%d', blank=True)

def __unicode__(self):
return u'Новость #%s' % self.id

class Meta:
verbose_name = u'новость'
verbose_name_plural = u'новости'

class Admin:
list_display = ['id', 'news_title', 'news_text', 'post_date']

class Control(models.Model):

post_date = models.DateTimeField(u'Дата', default=datetime.datetime.now)
control_title = models.CharField(u'Заголовок', max_length=100, blank=True)
control_text = models.TextField(u'Цель проверки', blank=True)
control_ful_text = models.TextField(u'Результаты', blank=True)
control_photo = models.ImageField(u'Фотография', upload_to='control/%Y/%m/%d', blank=True)

def __unicode__(self):
return u'Проверка #%s' % self.id

class Meta:
verbose_name = u'проверка'
verbose_name_plural = u'проверки'

class Admin:
list_display = ['id', 'post_date', 'control_title', 'control_text']



Отредактировано (Сен. 17, 2008 05:23:48)

Офлайн

#4 Сен. 16, 2008 14:13:00

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Пути к файлам и папкам и прочие грабли.

хм… а это что такое

from django.core import template
?



Офлайн

#5 Сен. 17, 2008 00:59:16

PavelZ
От:
Зарегистрирован: 2008-09-07
Сообщения: 71
Репутация: +  0  -
Профиль   Отправить e-mail  

Пути к файлам и папкам и прочие грабли.

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

На всякий случай исправил, вдруг кому понадобиться как пример простого приложения.
Осталось заставить паджинацию работать.



Отредактировано (Сен. 17, 2008 05:26:01)

Офлайн

  • Начало
  • » Django
  • » Пути к файлам и папкам и прочие грабли.[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version