今天在配置django 1.02 在激活Admin 時費了不少事,google了一下,原來是django 配置有變化。
可參考Django Step by Step 1.0.2
The new tutorial is not finished yet.
urls.py
以前的这么写:
from
django.conf.urls.defaults import
*
urlpatterns = patterns('',
(r'^admin/
', include('django.contrib.admin.urls
'),
)
Django1.0改成:
from
django.conf.urls.defaults import
*
from
django.contrib import
admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^admin/(.*)
', admin.site.root),
)
=========================================================================
models.py
以前:
class
MyTag
(models.Model):
name = models.CharField(blank=True, max_length=100)
class
Meta
:
verbose_name = 'MyTag
'
verbose_name_plural = 'MyTag
'
class
Admin
:
pass
def
__unicode__
(self):
return
self.name
class
MyEntry
(models.Model):
title = models.CharField(blank=True, max_length=100)
content = models.TextField(blank=True)
pub_date = models.DateTimeField(blank=True, default=datetime.datetime.now)
tags = models.ManyToManyField(MyTag, blank=True)
class
Meta
:
verbose_name = 'Entry
'
verbose_name_plural = 'Entries
'
ordering = ['-pub_date
']
class
Admin
:
list_display = ['title
', 'pub_date
']
search_fields = ['title
', 'content
']
js = ['/static/js/customize.js
']
def
__unicode__
(self):
return
self.title
Django1.0改成:
class
MyTag
(models.Model):
name = models.CharField(blank=True, max_length=100)
class
Meta
:
verbose_name = 'MyTag
'
verbose_name_plural = 'MyTag
'
def
__unicode__
(self):
return
self.name
class
MyEntry
(models.Model):
title = models.CharField(blank=True, max_length=100)
content = models.TextField(blank=True)
pub_date = models.DateTimeField(blank=True, default=datetime.datetime.now)
tags = models.ManyToManyField(MyTag, blank=True)
class
Meta
:
verbose_name = 'Entry
'
verbose_name_plural = 'Entries
'
ordering = ['-pub_date
']
def
__unicode__
(self):
return
self.title
admin.py
from
django.contrib import
admin
from
models import
MyTag, MyEntry
class
MyEntryAdmin
(admin.ModelAdmin):
list_display = ['title
', 'pub_date
']
search_fields = ['title
', 'content
']
class
Media
:
js = ['/static/js/customize.js
']
admin.site.register(MyTag)
admin.site.register(MyEntry, MyEntryAdmin)
======================================
forms
以前:
from
django import
newforms as
forms
Django1.0 改成:
from
django import
forms
======================================
models.py
class
MyModel
(models.Model):
myphoto = models.ImageField(upload_to="img/uploads
")
以前:
myinstance = MyModel.objects.all()[0]
photo_url = myinstance.get_myphoto_url()
Django1.0改成:
myinstance = MyModel.objects.all()[0]
photo_url = myinstance.myphoto.url
======================================
Forms:
class
MyUploadForm
(forms.Form):
target_file = forms.FileField(widget=forms.FileInput)
以前:
form = MyUploadForm(request.POST, request.FILES)
if
form.is_valid():
target_file = form.cleaned_data['target_file
']
f = open(target_file.filename, 'wb
')
f.write(target_file.content)
Django1.0改成:
form = MyUploadForm(request.POST, request.FILES)
if
form.is_valid():
target_file = form.cleaned_data['target_file
']
f = open(target_file.name, 'wb
')
for
chunk in
target_file.chunks():
f.write(chunk)
f.close()
======================================
Signal
以前:
from
django.db.models.signals import
pre_save
from
django.dispatch import
dispatcher
def
update
(signal, sender, instance, **kwds):
instance.pub_date = datetime.datetime.now()
dispatcher.connect(update, pre_save, MyEntry)
Django1.0改成:
from
django.db.models.signals import
pre_save
def
update
(signal, sender, instance, **kwds):
instance.pub_date = datetime.datetime.now()
pre_save.connect(receiver=update, sender=MyEntry)
分享到:
相关推荐
"集成了Django1.0的Google App Engine开发模板项目" 这个标题揭示了我们要探讨的核心内容。它表明我们有一个特定的项目模板,该模板结合了两个重要的技术:Django 1.0 和 Google App Engine。Django是一个广泛使用的...
除了上述核心内容外,《Django 1.0 模板开发》还涵盖了其他一些高级主题,如: - **模板调试工具**:提供了一系列工具帮助开发者快速定位和解决模板中的错误。 - **国际化与本地化支持**:介绍了如何使网站适应不同...
该书详细介绍了Django 1.0版本的相关知识,内容涵盖了从基础概念到高级用法的多个层面。本书的附录部分非常有用,适合有一定编程基础的开发者阅读。 知识点概述: 1. Web框架概念与MVC设计模式 Django是一种高级...
过滤器是在 Django 模板中修改变量值的一种方式。它们可以用来格式化日期、转换字符串大小写、截断文本等。与自定义标签类似,开发者也可以编写自己的过滤器来满足特定需求。例如,可以编写一个过滤器用于将长文本...
Django博客系统(Python)的数据库与模型非Django自动生成,采用Python的web开发框架(Django)和Mysql数据库,数据库的设计很不规范,由于时间方面的问题(基于才“出道”时的原有博客数据库结构),图片上传采用Python的...
解压"Django-1.7.10.tar.gz"文件后,你会得到一个名为"Django-1.7.10"的目录,其中包含了Django框架的所有源代码、文档、示例以及必要的工具。在这个目录下,你可以找到以下几个关键部分: 1. `django/`:Django...
通过上述内容,我们可以看出`django_cape-1.0.tar.gz`是一个基于Django的Python库,它为开发者提供特定功能,便于在PyPI上下载和通过pip安装,进一步增强Django项目的开发能力。对于Python后端开发者而言,了解和...
**PyPI 官网下载 | django-stories-1.0.tar.gz** 在Python的世界里,PyPI(Python Package Index)是官方的第三方Python软件包仓库,开发者可以在这里发布自己的Python库,供全球用户下载和使用。`django-stories-...
整个项目主要负责图书信息的添加,修改,多个条件组合查询,删除。虽然系统功能不是很复杂,不过这是一个很好的学习案例,包括了常用字段的设计,比如字符串,浮点型,整型,日期型,图片型,富文本字符串型,文件型...
《双鱼林Python基于Django图书管理系统 v1.0》是一个使用Python的Web框架Django开发的图书管理软件。这个项目对于学习Django框架、理解Web应用开发以及实践数据库管理和图书信息系统的构建具有很高的参考价值。它...
整个项目主要负责图书信息的添加,修改,多个条件组合查询,删除。虽然系统功能不是很复杂,不过这是一个很好的学习案例,包括了常用字段的设计,比如字符串,浮点型,整型,日期型,图片型,富文本字符串型,文件型...
完成所有配置后,重启Apache服务以使更改生效。然后可以通过浏览器访问`http://127.0.0.1:80/`(或者加上项目名称如`http://127.0.0.1:80/ipin/`)来测试部署是否成功。 #### 八、注意事项 1. **绝对路径**:在...
【标题】"双鱼林Python基于Django图书管理系统 v1.0-源码.zip" 提供的是一个使用Python编程语言和Django框架构建的图书管理系统的源代码版本。这个系统可能用于图书馆自动化管理,帮助管理员进行图书的入库、借阅、...
【PyPI 官网下载 | django-any-response-redirect-middleware-1.0.tar.gz】是一个在Python编程语言中使用的开源库,它可以从Python Package Index(PyPI)官方网站获取。PyPI是Python开发者发布自己编写的模块和软件...
为支持django3对django_cas_ng进行修改 **Features** - Support CAS version 1.0, 2.0, 3.0 - Support Single Sign Out - Configuration of services via the django Admin application - Fine control on ...
此外,为了提高用户体验,我们可以引入Django的表单系统来处理用户输入,以及Django的认证和授权机制,如登录和权限控制,确保只有授权用户可以访问或修改学生信息。 总结来说,"python之网页Web版学生管理系统,...
a CMS based on django 1.0,supported by Django Dream Team,created by huyoo353 on 2008-NOV-10. -------------------------------------------------------------------------------- ddtcms ver0.1一些说明...
安装完成后,点击“应用程序池”,找到“DefaultAppPool”,右击,选择“高级设置”,然后修改标识为“NetworkService”模式。 二、安装虚拟环境 在安装了 IIS 和 CGI 之后,我们需要安装虚拟环境。打开命令行工具...
主页: ...django-inventory 1.0.rc1 django-pagination 1.0.7 django-photologue 2.3 django-solo 1.0.5 djangorestframework 3.8.2 Markdown 2.6.11 orm-choices 1.0.0 Pillow 2.5.1 <pip>
3. 选课操作:学生选择自己感兴趣的课程,提交后由Django处理选课请求,更新选课关系表。 4. 选课结果查看:学生可以查看自己的选课结果,确认所选课程。 5. 管理员功能:管理员可以添加、修改或删除课程,查看所有...