IIssNan
|
2.0/chapter05/#452 |
2009-10-27 15:17:23
|
首先,导入Publisher模型类,
|
|
IIssNan
|
2.0/chapter05/#346 |
2009-10-27 11:21:40
|
打开由<literal> startapp</literal> 命令创建的<literal>models.py</literal> 并输入下面的内容:
|
|
IIssNan
|
2.0/chapter05/#384 |
2009-10-27 11:16:22
|
(就像我们在上一章设置TEMPLATE_DIRS所提到的逗号,同样在INSTALLED_APPS的末尾也需添加一个逗号,因为这是个单元素的元组。
|
|
IIssNan
|
2.0/chapter05/#384 |
2009-10-27 11:15:50
|
(就像我们在上一章设置TEMPLATE_DIRS所提到的逗号,同样在INSTALLED_APPS的末尾也需添加一个逗号,因为这是个单元素的元祖)
|
|
IIssNan
|
2.0/chapter05/#381 |
2009-10-27 11:13:32
|
然后,添加<literal> 'mysite.books'</literal> 到<literal> INSTALLED_APPS</literal> 的末尾,此时设置的内容看起来应该是这样的:
|
|
IIssNan
|
2.0/chapter05/#380 |
2009-10-27 11:11:37
|
(这四个app是经常使用到的,我们将在后续章节里讨论如何使用它们)。同时,注释掉MIDDLEWARE_CLASSES的默认设置条目,因为这些条目是依赖于刚才我们刚在INSTALLED_APPS注释掉的apps。
|
|
IIssNan
|
2.0/chapter05/#330 |
2009-10-27 10:54:35
|
第一个模型
|
|
IIssNan
|
2.0/chapter05/#305 |
2009-10-27 10:54:07
|
(有人认为这个程度的系统过载是可以接受的,而Django开发者的目标是尽可能地降低框架的系统过载)。第二,某些数据库,尤其是老版本的MySQL,并未完整存储那些精确的自省元数据。
|
|
IIssNan
|
2.0/chapter05/#282 |
2009-10-27 10:46:05
|
这个目录包含了这个app的模型和视图。
|
|
IIssNan
|
2.0/chapter05/#278 |
2009-10-27 10:44:13
|
这个命令并没有输出什么,它只在 <literal>mysite</literal> 的目录里创建了一个 <literal>books</literal> 目录。
|
|
IIssNan
|
2.0/chapter05/#272 |
2009-10-27 10:42:51
|
模型必须存放在apps中。
|
|
IIssNan
|
2.0/chapter05/#270 |
2009-10-27 10:41:57
|
但是,系统对app有一个约定:
|
|
IIssNan
|
2.0/chapter05/#268 |
2009-10-27 10:41:03
|
这些情况都不需要使用apps。
|
|
IIssNan
|
2.0/chapter05/#262 |
2009-10-27 10:40:23
|
对于如何架构Django代码并没有快速成套的规则。
|
|
IIssNan
|
2.0/chapter05/#264 |
2009-10-27 10:38:39
|
但如果是一个包含许多不相关的模块的复杂的网站,例如电子商务和社区之类的站点,那么你可能需要把这些模块划分成不同的app,以便以后重用。
|
|
IIssNan
|
2.0/chapter05/#263 |
2009-10-27 10:36:52
|
如果你只是建造一个简单的web站点,那么可能你只需要一个app就可以了;
|
|
IIssNan
|
2.0/chapter05/#262 |
2009-10-27 10:36:20
|
|
|
IIssNan
|
2.0/chapter05/#243 |
2009-10-27 10:31:21
|
查看DATABASE_HOST和DATABASE_PORT是否已正确配置,并确认数据库服务器是否已正常运行。
|
|
IIssNan
|
2.0/chapter05/#226 |
2009-10-27 10:27:50
|
未安装合适的数据库适配器 (例如, <literal>psycopg</literal> 或 <literal>MySQLdb</literal> ).
|
|
IIssNan
|
2.0/chapter05/#221 |
2009-10-27 10:26:48
|
使用<literal> python manager.py shell</literal> 命令启动的交互解释器,而非<literal> python</literal> 命令启动的交互解释器。
|
|
IIssNan
|
2.0/chapter05/#216 |
2009-10-27 10:23:34
|
未正确配置<literal> DATABASE_ENGINE</literal> 的值。
|
|
IIssNan
|
2.0/chapter05/#214 |
2009-10-27 10:17:54
|
|
|
leid
|
2.0/chapter17/#23 |
2009-10-27 09:54:56
|
我们从一个简单的例子开始。
|
|
IIssNan
|
2.0/chapter05/#195 |
2009-10-27 09:03:45
|
我们可以在 <literal> mysite</literal> 项目目录下执行上章所提到的 <literal> python manager.py shell</literal> 来进行测试。
|
|
IIssNan
|
2.0/chapter05/#245 |
2009-10-27 09:01:46
|
第一个应用程序
|
|
|
2.0/chapter02/#80 |
2009-10-26 17:13:22
|
最新最好的django的开发版本称为trunk,可以从django的subversion处获得。
|
|
IIssNan
|
2.0/chapter05/#726 |
2009-10-26 17:12:27
|
删除数据库中的对象只需调用该对象的delete()方法即可:
|
|
IIssNan
|
2.0/chapter05/#440 |
2009-10-26 17:08:35
|
你可以手动启动命令行客户端(例如,执行PostgreSQL的<literal> psql</literal> 命令),也可以执行 <literal> python manage.py dbshell</literal> ,这个命令将依据<literal> DATABASE_SERVER</literal> 的里设置自动检测使用何种命令行客户端。
|
|
IIssNan
|
2.0/chapter05/#435 |
2009-10-26 17:00:46
|
(本章的最后将详细讨论修改数据库的架构)
|
|
IIssNan
|
2.0/chapter05/#425 |
2009-10-26 16:57:57
|
如果要创建数据表,你可以复制那些SQL语句到你使用数据库客户端后执行,或者通过Unix管道直接进行操作(例如,<literal> python manager.py sqlall books | psql mydb</literal> )。不过,Django提供了一种更为简易的提交SQL语句至数据库的方法:
|
|
IIssNan
|
2.0/chapter05/#429 |
2009-10-26 16:53:59
|
执行这个命令后,将看到类似以下的内容:
|
|
IIssNan
|
2.0/chapter05/#426 |
2009-10-26 16:51:57
|
<literal> syncdb</literal> 命令
|
|
mitnk
|
2.0/chapter07/#131 |
2009-10-26 14:43:37
|
简而言之:
|
|
mitnk
|
2.0/chapter07/#130 |
2009-10-26 14:42:41
|
我们暂时先只显示用户搜索的字词,以确定搜索数据被正确地提交给了Django,这样你就会知道搜索数据是如何在这个系统中传递的。
|
|
mitnk
|
2.0/chapter07/#130 |
2009-10-26 14:41:37
|
我们暂时先只显示用户搜索的字词,以确定搜索数据被正确地提交给了Django,这样你就了解到搜索数据是如何在这个系统中传递的。
|
|
mitnk
|
2.0/chapter07/#130 |
2009-10-26 14:41:19
|
我们暂时先只显示用户搜索的字词,以确定搜索数据被正确地提交给了Django,这样你就了解了搜索数据是如何在这个系统中传递的。
|
|
mitnk
|
2.0/chapter07/#127 |
2009-10-26 14:35:42
|
让我们来添加它们,并看下view函数:
|
|
mitnk
|
2.0/chapter07/#126 |
2009-10-26 14:33:22
|
这个Form指向的URL <literal>/search/</literal> 还没有被实现。
|
|
mitnk
|
2.0/chapter07/#125 |
2009-10-26 14:32:08
|
不过,当你通过这个form提交数据时,你会得到一个Django 404错误。
|
|
mitnk
|
2.0/chapter07/#123 |
2009-10-26 14:31:02
|
非常简单。
|
|
mitnk
|
2.0/chapter07/#122 |
2009-10-26 14:30:03
|
现在,如果你运行 <literal>runserver</literal> 命令,然后访问<literal>http://127.0.0.1:8000/search-form/</literal>,你会看到搜索界面。
|
|
mitnk
|
2.0/chapter07/#122 |
2009-10-26 14:29:06
|
现在,如果你运行 <literal>runserver</literal> 命令,然后访问 <literal></literal> ,你会看到搜索界面。
|
|
IIssNan
|
2.0/chapter05/#328 |
2009-10-26 11:09:27
|
我们将在第18章中对此进行讨论。
|
|
IIssNan
|
2.0/chapter05/#275 |
2009-10-26 11:01:58
|
在<literal> mysite</literal> 项目文件下输入下面的命令来创建<literal> books</literal> app
|
|
IIssNan
|
2.0/chapter05/#268 |
2009-10-26 11:00:49
|
不需要创建apps。
|
|
IIssNan
|
2.0/chapter05/#267 |
2009-10-26 11:00:24
|
在之前那些例子中,我们只是简单的创建了一个称为views.py的文件,编写了一些函数并将在URLconf中设置各个函数的映射。
|
|
IIssNan
|
2.0/chapter05/#266 |
2009-10-26 10:57:50
|
确实,你还可以不用创建app,例如以前写的视图,只是简单的放在 views.py 。
|
|
IIssNan
|
2.0/chapter05/#231 |
2009-10-26 10:48:59
|
也许是拼写错误?
|
|
IIssNan
|
2.0/chapter05/#230 |
2009-10-26 10:48:50
|
设置正确的 <literal>DATABASE_ENGINE</literal> 配置。
|
|
IIssNan
|
2.0/chapter05/#219 |
2009-10-26 10:48:20
|
|
|