<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.feedsky.com/magicshui" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/magicshui" type="application/rss+xml"></fs:self_link><lastBuildDate>Sat, 19 Jun 2010 06:12:27 GMT</lastBuildDate><title>矿泉水</title><description>含有矿物质magic</description><image><url>http://www.feedsky.com/images/feedsky_logologo.gif</url><title>矿泉水</title><link>http://www.shui.us</link></image><link>http://www.shui.us</link><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><language>en</language><pubDate>Sat, 19 Jun 2010 06:12:27 GMT</pubDate><item><title>Hetaoo团队编程规范</title><link>http://www.shui.us/archives/1685</link><content:encoded>&lt;p class='fp'&gt;因为将会在大三做项目，所以就想向大家说明一下简单的编程规范，准备做一个系列的PPT展示&lt;/p&gt;
&lt;p&gt; &lt;iframe height=&quot;342&quot; src=&quot;http://docs.google.com/present/embed?id=dctprgx2_43dqns4vgj&quot; frameborder=&quot;0&quot; width=&quot;410&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1685&amp;amp;title=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1685&amp;amp;title=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1685&amp;amp;title=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1685&amp;amp;submitHeadline=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&amp;amp;submitSummary=%E5%9B%A0%E4%B8%BA%E5%B0%86%E4%BC%9A%E5%9C%A8%E5%A4%A7%E4%B8%89%E5%81%9A%E9%A1%B9%E7%9B%AE%EF%BC%8C%E6%89%80%E4%BB%A5%E5%B0%B1%E6%83%B3%E5%90%91%E5%A4%A7%E5%AE%B6%E8%AF%B4%E6%98%8E%E4%B8%80%E4%B8%8B%E7%AE%80%E5%8D%95%E7%9A%84%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83%EF%BC%8C%E5%87%86%E5%A4%87%E5%81%9A%E4%B8%80%E4%B8%AA%E7%B3%BB%E5%88%97%E7%9A%84PPT%E5%B1%95%E7%A4%BA%20&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1685&amp;amp;title=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1685&amp;amp;t=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1685&amp;amp;t=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83+-+http://b2l.me/4uxfv+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E5%9B%A0%E4%B8%BA%E5%B0%86%E4%BC%9A%E5%9C%A8%E5%A4%A7%E4%B8%89%E5%81%9A%E9%A1%B9%E7%9B%AE%EF%BC%8C%E6%89%80%E4%BB%A5%E5%B0%B1%E6%83%B3%E5%90%91%E5%A4%A7%E5%AE%B6%E8%AF%B4%E6%98%8E%E4%B8%80%E4%B8%8B%E7%AE%80%E5%8D%95%E7%9A%84%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83%EF%BC%8C%E5%87%86%E5%A4%87%E5%81%9A%E4%B8%80%E4%B8%AA%E7%B3%BB%E5%88%97%E7%9A%84PPT%E5%B1%95%E7%A4%BA%20%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1685&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1685/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&amp;amp;link=http://www.shui.us/archives/1685&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1685&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1685&amp;amp;title=Hetaoo%E5%9B%A2%E9%98%9F%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1685&quot;&gt;Hetaoo团队编程规范&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1685#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/hetaoo&quot; rel=&quot;tag&quot;&gt;hetaoo&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380930537/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1685&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380930537/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380930537/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a1a122a109b54233eceecbead6973db4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a1a122a109b54233eceecbead6973db4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6cb768a6ea58b5d3fd5f9f2ad9d2be46&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6cb768a6ea58b5d3fd5f9f2ad9d2be46&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=e54fe9ab58b7ed1e8041cb1f0550a1c5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=e54fe9ab58b7ed1e8041cb1f0550a1c5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=bce283ca4b8c5f5108cd9c0c7d3a58b3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=bce283ca4b8c5f5108cd9c0c7d3a58b3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=306f1f2873390259ffd91c5f3b8db1e6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=306f1f2873390259ffd91c5f3b8db1e6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=580cd2967c1fc725bdba46ec20ccdb1c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=580cd2967c1fc725bdba46ec20ccdb1c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=f73fdb3e0ff00015f8671d85aeff5f87&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=f73fdb3e0ff00015f8671d85aeff5f87&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1685/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;因为将会在大三做项目，所以就想向大家说明一下简单的编程规范，准备做一个系列的PPT展示&lt;/p&gt;  &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1685'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380930537/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1685&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380930537/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380930537/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a1a122a109b54233eceecbead6973db4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a1a122a109b54233eceecbead6973db4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6cb768a6ea58b5d3fd5f9f2ad9d2be46&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6cb768a6ea58b5d3fd5f9f2ad9d2be46&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=e54fe9ab58b7ed1e8041cb1f0550a1c5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=e54fe9ab58b7ed1e8041cb1f0550a1c5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=bce283ca4b8c5f5108cd9c0c7d3a58b3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=bce283ca4b8c5f5108cd9c0c7d3a58b3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=306f1f2873390259ffd91c5f3b8db1e6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=306f1f2873390259ffd91c5f3b8db1e6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=580cd2967c1fc725bdba46ec20ccdb1c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=580cd2967c1fc725bdba46ec20ccdb1c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=f73fdb3e0ff00015f8671d85aeff5f87&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=f73fdb3e0ff00015f8671d85aeff5f87&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>hetaoo</category><category>Think</category><pubDate>Sat, 19 Jun 2010 14:12:27 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1685#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1685</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1685</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380930537/5895338</fs:itemid></item><item><title>写你的第一个Django程序 4th</title><link>http://www.shui.us/archives/1684</link><content:encoded>&lt;p class='fp'&gt;这是第三部分的延续。我们将会继续投票程序，并且集中注意力到简单的表单生成和简化代码。&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写一个简单的表单&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;让我们升级我们的投票详细模板（“polls/detail.html”），这样他将会含有HTML标签&amp;lt;form&amp;gt;：&lt;/p&gt;
&lt;blockquote&gt;&lt;pre&gt;&amp;lt;h1&amp;gt;{{ poll.question }}&amp;lt;/h1&amp;gt;

{% if error_message %}&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;{{ error_message }}&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;{% endif %}

&amp;lt;form action=&amp;quot;/polls/{{ poll.id }}/vote/&amp;quot; method=&amp;quot;post&amp;quot;&amp;gt;
{% csrf_token %}
{% for choice in poll.choice_set.all %}
    &amp;lt;input type=&amp;quot;radio&amp;quot; name=&amp;quot;choice&amp;quot; id=&amp;quot;choice{{ forloop.counter }}&amp;quot; value=&amp;quot;{{ choice.id }}&amp;quot; /&amp;gt;
    &amp;lt;label for=&amp;quot;choice{{ forloop.counter }}&amp;quot;&amp;gt;{{ choice.choice }}&amp;lt;/label&amp;gt;&amp;lt;br /&amp;gt;
{% endfor %}
&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Vote&amp;quot; /&amp;gt;
&amp;lt;/form&amp;gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span id=&quot;more-1684&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;素描：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;上边的模板为每一个投票选项添加一个可选按钮。每一个可选按钮的值关联到投票选项的ID。每一个选项按钮的名字是“choice”.也就是说，如果某个人选择了一个按钮，然后提交给表单，他将会POST数据：choice=3，这是HTML表单101。 &lt;/li&gt;
&lt;li&gt;我么么选择表单action给/polls/{{ poll.id }}/vote/，我们设置method=&amp;quot;post&amp;quot;。使用method=&amp;quot;post&amp;quot;很重要，因为这个提交表单的动作将会在服务器端提交数据。当你创建一个服务器端提示数据时，使用method=&amp;quot;post&amp;quot;。这个准则不仅仅适用于Django。这是一个好的web开发习惯。 &lt;/li&gt;
&lt;li&gt;&lt;tt&gt;forloop.counter标明for标签在循环中被调用的次数。&lt;/tt&gt; &lt;/li&gt;
&lt;li&gt;&lt;tt&gt;子冲我们创建了一个POST表单（有填充数据功能），我们需要考虑卡站点请求。庆幸，我们不用过于着急，因为Django含有一个易用的保护系统。简单的说，所有的POST表单应当那个使用% csrf_token %}标签在每一个URLs中。&lt;/tt&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;tt&gt;这个% csrf_token %}标签从请求对象中请求数据信息，在模板内容中这将不会是很简单触及的。为了修复这个，一个简单那的判断需要包含在detail视图中，如下：&lt;/tt&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from django.template import RequestContext
# ...
def detail(request, poll_id):
    p = get_object_or_404(Poll, pk=poll_id)
    return render_to_response('polls/detail.html', {'poll': p},
                               context_instance=RequestContext(request))&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;pre&gt;详细工作原理参见&lt;a href=&quot;http://docs.djangoproject.com/ref/templates/api/#subclassing-context-requestcontext&quot;&gt;&lt;em&gt;RequestContext&lt;/em&gt;&lt;/a&gt;&lt;/pre&gt;
&lt;pre&gt;现在，让我们创建一个Django视图，它将会处理所有的提交数据并且做出反应。基础，在教程3中，我们创建了一个URLconf给投票程序包含如下行：&lt;/pre&gt;
&lt;blockquote&gt;
&lt;pre&gt;(r'^(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'vote'),&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;我们同样需要创建一个vote()函数的调用。让偶我们创建一个实时版本，添加如下于&lt;tt&gt;mysite/polls/views.py&lt;/tt&gt;:&lt;/p&gt;
&lt;pre&gt;from django.shortcuts import get_object_or_404, render_to_response
from django.http import HttpResponseRedirect, HttpResponse
from django.core.urlresolvers import reverse
from django.template import RequestContext
from mysite.polls.models import Choice, Poll
# ...
def vote(request, poll_id):
    p = get_object_or_404(Poll, pk=poll_id)
    try:
        selected_choice = p.choice_set.get(pk=request.POST['choice'])
    except (KeyError, Choice.DoesNotExist):
        # Redisplay the poll voting form.
        return render_to_response('polls/detail.html', {
            'poll': p,
            'error_message': &amp;quot;You didn't select a choice.&amp;quot;,
        }, context_instance=RequestContext(request))
    else:
        selected_choice.votes += 1
        selected_choice.save()
        # Always return an HttpResponseRedirect after successfully dealing
        # with POST data. This prevents data from being posted twice if a
        # user hits the Back button.
        return HttpResponseRedirect(reverse('mysite.polls.views.results', args=(p.id,)))&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;pre&gt;这些代码包含我们教程中还没有涉及到的事情：&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/request-response/#django.http.HttpRequest.POST&quot;&gt;&lt;tt&gt;request.POST&lt;/tt&gt;&lt;/a&gt;是一个字典样的对象，它让你通过名字接触到提交数据。在这个例子中，request.POST['choice']返回选项的ID。request.POST通常是一个字符串。注意到，Django同样提供&lt;a href=&quot;http://docs.djangoproject.com/ref/request-response/#django.http.HttpRequest.GET&quot;&gt;&lt;tt&gt;request.GET&lt;/tt&gt;&lt;/a&gt;来触及GET数据以相同方式&amp;#8212;但是我们明确使用request.POST在代码中，这保证数据只会被触发通过POST调用。 &lt;/li&gt;
&lt;li&gt;request.POST['choice']在没有选项在POST数据中时产生一个KeyError.如上代码检查KeyError然后重新展示含有错误信息的投票表单在选项没有时。 &lt;/li&gt;
&lt;li&gt;在选项增加以后，返回HttpResponseRedirect而不是平常的HttpResponse.HttpResponseRedirect含有一个参数：用户将被重定向的URL。就像上边Python代码指出的，你应当在成功处理数据以后返回一个HttpResponseRedirect对象；这不是只对Django这样，而是一个良好的web变成习惯。 &lt;/li&gt;
&lt;li&gt;我们使用reverse（）函数于HttpResponseRedirect构建。这个函数帮助避免在URL视图中硬编码。它给予视图名称，我们希望传递的，和这个URL模式向指向的视图。在这个例子中，使用我们在教程3中的URLconf，这个reverse（）函数返回如下字符串： &lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;pre&gt;'/polls/3/results/'&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这里3是p.id的值。这个重定向URL将会调用“results”视图在最后的展示页面。注意到你需要使用视图全程。（包括前缀）&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;就像在教程3中提及的那样，request是一个HttpRequest对象。更多参照：&lt;a href=&quot;http://docs.djangoproject.com/ref/request-response/#ref-request-response&quot;&gt;&lt;em&gt;request and response documentation&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;有人投票以后，vote（）视图重定向页面到投票结果，让我们写此视图：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;def results(request, poll_id):
    p = get_object_or_404(Poll, pk=poll_id)
    return render_to_response('polls/results.html', {'poll': p})&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这就像教程3中的detail（）一样。唯一的不同是模板的名字。我们将会修复这个冗余。&lt;/p&gt;
&lt;p&gt;现在创建一个results.html模板：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&amp;lt;h1&amp;gt;{{ poll.question }}&amp;lt;/h1&amp;gt;

&amp;lt;ul&amp;gt;
{% for choice in poll.choice_set.all %}
    &amp;lt;li&amp;gt;{{ choice.choice }} -- {{ choice.votes }} vote{{ choice.votes|pluralize }}&amp;lt;/li&amp;gt;
{% endfor %}
&amp;lt;/ul&amp;gt;

&amp;lt;a href=&amp;quot;/polls/{{ poll.id }}/&amp;quot;&amp;gt;Vote again?&amp;lt;/a&amp;gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;现在，在你的浏览器中进入/poll/1/，然后投票。你将会在每一次投票时看到一个结果页面。如果你没有选择任何投票就提交，你将会一条错误信息。&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;使用一般视图：更少的视图将会更好&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这个detail（）和results()很相似&amp;#8212;就像上边提及的，他们是冗余。这个index()同样。&lt;/p&gt;
&lt;p&gt;这些视图展现一个基础web设计中的通例：根从URL的得到的参数从数据库中找到数据，载入模板然后返回组成的模板。因为这是很平常的，Django提供一个快捷，称之为“generic views”系统。&lt;/p&gt;
&lt;p&gt;一般视图抽象出你不行写Python代码的通用模式。&lt;/p&gt;
&lt;p&gt;让我们转化应用通过一个通用视图系统，然后我们就可以删除一大堆代码。我们将花费几分钟时就爱你来转哈u，我们将：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;转化URLconf&lt;/li&gt;
&lt;li&gt;重命名几个模板&lt;/li&gt;
&lt;li&gt;删除老的不需要的视图&lt;/li&gt;
&lt;li&gt;修复几个视图URL&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;首先，打开&lt;tt&gt;polls/urls.py&lt;/tt&gt;，它看起来如下：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from django.conf.urls.defaults import *

urlpatterns = patterns('mysite.polls.views',
    (r'^$', 'index'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/$', 'detail'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/results/$', 'results'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'vote'),
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;将其改变为：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from django.conf.urls.defaults import *
from mysite.polls.models import Poll

info_dict = {
    'queryset': Poll.objects.all(),
}

urlpatterns = patterns('',
    (r'^$', 'django.views.generic.list_detail.object_list', info_dict),
    (r'^(?P&amp;lt;object_id&amp;gt;\d+)/$', 'django.views.generic.list_detail.object_detail', info_dict),
    url(r'^(?P&amp;lt;object_id&amp;gt;\d+)/results/$', 'django.views.generic.list_detail.object_detail', dict(info_dict, template_name='polls/results.html'), 'poll_results'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'mysite.polls.views.vote'),
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;我们使用了两个通用视图：&lt;tt&gt;object_list()&lt;/tt&gt; 和&lt;tt&gt;object_detail()。着来年各个视图抽象了“展示一个对象列表”和“展现一个特定对象的详细页面”。&lt;/tt&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;tt&gt;每一个普通视图需要知道他所处理的数据。数据在字典中被提供。字典中的queryset指向被普通视图槽中的一个对象列表&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;&lt;tt&gt;这个object_detail()普通视图期望URL中被称为“object_id”的ID值，所以我们改变&lt;/tt&gt;&lt;tt&gt;poll_id&lt;/tt&gt; 到 &lt;tt&gt;object_id&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;我们需要增加一个名字，poll_results以使其返回视图，这样我们稍后将会有方式返回他的URL。我们同样适用&lt;/tt&gt;&lt;tt&gt;django.conf.urls.defaults&lt;/tt&gt;中的url()。这是一个好习惯当你提供一个模式名字如上时使用url().&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;默认，&lt;/tt&gt;&lt;tt&gt;object_detail()&lt;/tt&gt; 普通视图使用&lt;tt&gt;&amp;lt;app name&amp;gt;/&amp;lt;model name&amp;gt;_detail.html&lt;/tt&gt;. 在我们的例子中，它使用&lt;tt&gt;&amp;quot;polls/poll_detail.html&amp;quot;&lt;/tt&gt;. 因此重命名你的&lt;tt&gt;polls/detail.html&lt;/tt&gt;模板为&lt;tt&gt;polls/poll_detail.html&lt;/tt&gt;, 然后改变&lt;tt&gt;vote()&lt;/tt&gt;中的&lt;a href=&quot;http://docs.djangoproject.com/topics/http/shortcuts/#django.shortcuts.render_to_response&quot;&gt;&lt;tt&gt;render_to_response()&lt;/tt&gt;&lt;/a&gt; 。&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;同样，the &lt;/tt&gt;&lt;tt&gt;object_list()通用视图使用&lt;/tt&gt;&lt;tt&gt;&amp;lt;app name&amp;gt;/&amp;lt;model name&amp;gt;_list.html&lt;/tt&gt;. 因此重命名&lt;tt&gt;polls/index.html&lt;/tt&gt; 为&lt;tt&gt;polls/poll_list.html&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;因为我们的投票程序中URLconf不止一个entry使用object_detail()，我们人工区分一个模板名称：&lt;/tt&gt;&lt;tt&gt;template_name='polls/results.html'，这样，所有视图将会使用同一个模板。注意到我们使用dict（）来返回一个字典。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;在教程的前面，模板被含有&lt;/tt&gt;&lt;tt&gt;poll&lt;/tt&gt; 和&lt;tt&gt;latest_poll_list内容变量充斥的内容所提供。然后，普通视图提供一变量object和object_list作为变量。因此，我们需要改变模板来满足新的变量。在你的模板中，重新定义对&lt;/tt&gt;&lt;tt&gt;latest_poll_list&lt;/tt&gt;的引用到 &lt;tt&gt;object_list，定义&lt;/tt&gt;&lt;tt&gt;poll&lt;/tt&gt;的引用到 &lt;tt&gt;object。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;你可以删除&lt;/tt&gt;&lt;tt&gt;polls/views.py中的&lt;/tt&gt;&lt;tt&gt;index()&lt;/tt&gt;, &lt;tt&gt;detail()&lt;/tt&gt; 和&lt;tt&gt;results()视图。我们不在需要他们---他们已经被通用视图取代。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;vote（）仍然需要。然后，他需要改变来满足新的内容变量。在&lt;a href=&quot;http://docs.djangoproject.com/topics/http/shortcuts/#django.shortcuts.render_to_response&quot;&gt;&lt;tt&gt;render_to_response()&lt;/tt&gt;&lt;/a&gt;调用中，重命名poll为object。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;最后一件事情是修复普通视图使用的URLconf。子这个投票视图中我们使用reverse（）函数来避免在URL中硬编码。现在我们转换到一个通用视图，我们需要改变reverse（）调用，使其指向我们新的通用视图。我们，不能只是使用视图函数---通用视图可以被多次使用----但是我们使用给定的名称：&lt;/tt&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;return HttpResponseRedirect(reverse('poll_results', args=(p.id,)))&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;运行服务器，使用你给予通用视图的投票程序。&lt;/p&gt;
&lt;p&gt;更多参照：&lt;a href=&quot;http://docs.djangoproject.com/topics/http/generic-views/#topics-http-generic-views&quot;&gt;&lt;em&gt;generic views documentation&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;继续&lt;/p&gt;
&lt;p&gt;教程到此结束。以后的安装教程涵盖：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;高级表单生成&lt;/li&gt;
&lt;li&gt;使用RSS框架&lt;/li&gt;
&lt;li&gt;使用缓存框架&lt;/li&gt;
&lt;li&gt;使用留言框架&lt;/li&gt;
&lt;li&gt;高级管理：准许&lt;/li&gt;
&lt;li&gt;高级管理：自定义JavaScript&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;此时，你也许想知道下一步怎么办：&lt;a href=&quot;http://docs.djangoproject.com/whatsnext/#intro-whatsnext&quot;&gt;&lt;em&gt;where to go from here&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1684&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1684&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1684&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1684&amp;amp;submitHeadline=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&amp;amp;submitSummary=%E8%BF%99%E6%98%AF%E7%AC%AC%E4%B8%89%E9%83%A8%E5%88%86%E7%9A%84%E5%BB%B6%E7%BB%AD%E3%80%82%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E7%BB%A7%E7%BB%AD%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%EF%BC%8C%E5%B9%B6%E4%B8%94%E9%9B%86%E4%B8%AD%E6%B3%A8%E6%84%8F%E5%8A%9B%E5%88%B0%E7%AE%80%E5%8D%95%E7%9A%84%E8%A1%A8%E5%8D%95%E7%94%9F%E6%88%90%E5%92%8C%E7%AE%80%E5%8C%96%E4%BB%A3%E7%A0%81%E3%80%82%20%20%26%23160%3B%20%20%E5%86%99%E4%B8%80%E4%B8%AA%E7%AE%80%E5%8D%95%E7%9A%84%E8%A1%A8%E5%8D%95%20%20%E8%AE%A9%E6%88%91%E4%BB%AC%E5%8D%87%E7%BA%A7%E6%88%91%E4%BB%AC%E7%9A%84%E6%8A%95%E7%A5%A8%E8%AF%A6%E7%BB%86%E6%A8%A1%E6%9D%BF%EF%BC%88%E2%80%9Cpolls%2Fdetail.html%E2%80%9D%EF%BC%89%EF%BC%8C%E8%BF%99%E6%A0%B7%E4%BB%96%E5%B0%86%E4%BC%9A%E5%90%AB%E6%9C%89HTML%E6%A0%87%E7%AD%BE%26lt%3Bform%26gt%3B%EF%BC%9A%20%20%20%20%20%26lt%3Bh1%26gt%3B%7B%7B%20&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1684&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1684&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1684&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th+-+http://b2l.me/4t3v5+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F%204th%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E8%BF%99%E6%98%AF%E7%AC%AC%E4%B8%89%E9%83%A8%E5%88%86%E7%9A%84%E5%BB%B6%E7%BB%AD%E3%80%82%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E7%BB%A7%E7%BB%AD%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%EF%BC%8C%E5%B9%B6%E4%B8%94%E9%9B%86%E4%B8%AD%E6%B3%A8%E6%84%8F%E5%8A%9B%E5%88%B0%E7%AE%80%E5%8D%95%E7%9A%84%E8%A1%A8%E5%8D%95%E7%94%9F%E6%88%90%E5%92%8C%E7%AE%80%E5%8C%96%E4%BB%A3%E7%A0%81%E3%80%82%20%20%26%23160%3B%20%20%E5%86%99%E4%B8%80%E4%B8%AA%E7%AE%80%E5%8D%95%E7%9A%84%E8%A1%A8%E5%8D%95%20%20%E8%AE%A9%E6%88%91%E4%BB%AC%E5%8D%87%E7%BA%A7%E6%88%91%E4%BB%AC%E7%9A%84%E6%8A%95%E7%A5%A8%E8%AF%A6%E7%BB%86%E6%A8%A1%E6%9D%BF%EF%BC%88%E2%80%9Cpolls%2Fdetail.html%E2%80%9D%EF%BC%89%EF%BC%8C%E8%BF%99%E6%A0%B7%E4%BB%96%E5%B0%86%E4%BC%9A%E5%90%AB%E6%9C%89HTML%E6%A0%87%E7%AD%BE%26lt%3Bform%26gt%3B%EF%BC%9A%20%20%20%20%20%26lt%3Bh1%26gt%3B%7B%7B%20%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1684&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1684/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&amp;amp;link=http://www.shui.us/archives/1684&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1684&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1684&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+4th&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1684&quot;&gt;写你的第一个Django程序 4th&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1684#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/django&quot; rel=&quot;tag&quot;&gt;django&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874757/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1684&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874757/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874757/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=992155af174a92302188e19bbe59d85c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=992155af174a92302188e19bbe59d85c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=165ee63f7c0dd24c590c079eb8002ec4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=165ee63f7c0dd24c590c079eb8002ec4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=61b2c787c8528751137974c9c2dbf78f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=61b2c787c8528751137974c9c2dbf78f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=677c105549e9da897cac759ec6ded543&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=677c105549e9da897cac759ec6ded543&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7c9cdcef7134930c736e4d41f159a8cd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7c9cdcef7134930c736e4d41f159a8cd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5a97c3cadd79c8a58eb52b3142bb5ab6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5a97c3cadd79c8a58eb52b3142bb5ab6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=1fd1d924075f663c41cc00dffbcc6a6a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=1fd1d924075f663c41cc00dffbcc6a6a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1684/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;这是第三部分的延续。我们将会继续投票程序，并且集中注意力到简单的表单生成和简化代码。&lt;/p&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写一个简单的表单&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;让我们升级我们的投票详细模板（“polls/detail.html”），这样他将会含有HTML标签&amp;#60;form&amp;#62;：&lt;/p&gt;&lt;p&gt;&amp;#60;h1&amp;#62;{{ poll.question }}&amp;#60;/h1&amp;#62;&lt;/p&gt;&lt;p&gt;{% if error_message %}&amp;#60;p&amp;#62;&amp;#60;strong&amp;#62;{{ error_message }}&amp;#60;/strong&amp;#62;&amp;#60;/p&amp;#62;{% endif %}&lt;/p&gt;&lt;p&gt;&amp;#60;form action=&amp;#34;/polls/{{ poll.id }}/vote/&amp;#34; method=&amp;#34;post&amp;#34;&amp;#62;
{% csrf_token %}
{% for choice in poll.choice_set.all %}&lt;/p&gt;&lt;p&gt;&amp;#60;input type=&amp;#34;radio&amp;#34; name=&amp;#34;choice&amp;#34; id=&amp;#34;choice{{ forloop.counter }}&amp;#34; value=&amp;#34;{{ choice.id }}&amp;#34; /&amp;#62;&lt;/p&gt;&lt;p&gt;&amp;#60;label for=&amp;#34;choice{{ forloop.counter }}&amp;#34;&amp;#62;{{ choice.choice }}&amp;#60;/label&amp;#62;&amp;#60;br /&amp;#62;
{% endfor %}
&amp;#60;input type=&amp;#34;submit&amp;#34; value=&amp;#34;Vote&amp;#34; /&amp;#62;
&amp;#60;/form&amp;#62;
&lt;/p&gt;
 &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1684'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874757/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1684&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874757/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874757/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=992155af174a92302188e19bbe59d85c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=992155af174a92302188e19bbe59d85c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=165ee63f7c0dd24c590c079eb8002ec4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=165ee63f7c0dd24c590c079eb8002ec4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=61b2c787c8528751137974c9c2dbf78f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=61b2c787c8528751137974c9c2dbf78f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=677c105549e9da897cac759ec6ded543&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=677c105549e9da897cac759ec6ded543&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7c9cdcef7134930c736e4d41f159a8cd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7c9cdcef7134930c736e4d41f159a8cd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5a97c3cadd79c8a58eb52b3142bb5ab6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5a97c3cadd79c8a58eb52b3142bb5ab6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=1fd1d924075f663c41cc00dffbcc6a6a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=1fd1d924075f663c41cc00dffbcc6a6a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>django</category><category>Think</category><pubDate>Sat, 19 Jun 2010 11:33:49 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1684#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1684</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1684</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874757/5895338</fs:itemid></item><item><title>写你的第一个Django程序 3rd</title><link>http://www.shui.us/archives/1683</link><content:encoded>&lt;p class='fp'&gt;这是第二部分的延续。我们将会对于投票程序继续探讨并且集中注意力到如何创建一个公开的接口&amp;#8212;“views”.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;定义&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;一个视图是你的Django程序中的页面种类，它一般来说提供一个特定功能并且包含一个特定的模板。例如，在一个博客程序中，你也许会包含一些视图：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;博客首页&amp;#8212;展现最新的文章 &lt;/li&gt;
&lt;li&gt;文章“详细”页面&amp;#8212;一个文章的永久页 &lt;/li&gt;
&lt;li&gt;基于年的汇总页&amp;#8212;-展示某一年中所有月份的文章 &lt;/li&gt;
&lt;li&gt;基于月的汇总页&amp;#8212;-展示某一个月的所有文章 &lt;/li&gt;
&lt;li&gt;基于天的汇总页&amp;#8212;-展示某一天的搜有文章 &lt;/li&gt;
&lt;li&gt;留言&amp;#8212;对于一个文章的留言句柄 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在我们的投票程序中，我们已经有了如下的四个视图：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;“archive”页&amp;#8212;-展示最新的投票 &lt;/li&gt;
&lt;li&gt;“detail”页&amp;#8212;&amp;#8212;投票的所有问题，没有结果，但是含有投票框 &lt;/li&gt;
&lt;li&gt;“results”页&amp;#8212;-某一个投票问题的结果 &lt;/li&gt;
&lt;li&gt;vote&amp;#8212;&amp;#8211;对某一个投票问题投某一票的句柄 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在Django中，每一个页面使用过一个简单的Python函数来展现的。&lt;/p&gt;
&lt;p&gt; &lt;span id=&quot;more-1683&quot;&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;设计你的URLs&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;写视图的第一部是设计你的URL结构。你可以通过创造Python模块来实现，称之为URLconfs.它定义了Django如何关联一个特定的URL通过给定的Python代码。&lt;/p&gt;
&lt;p&gt;当一个用户请求一个Django页面时，系统查找ROOT_URLCONF设置，它包含了一个Python语法块。Django加载这个模块，然后查找模块级别的变量urlpatterns,它包含一系列如下模式的元组：&lt;/p&gt;
&lt;blockquote&gt;&lt;pre&gt;(regular expression, Python callback function [, optional dictionary])&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Django起始于第一个正则表达式，然后顺着查找，比较每一个请求URL于每一表达式，直到找到符合的为止。&lt;/p&gt;
&lt;p&gt;当找到一个匹配以后，Django将会调用Python回调函数，使用一个HttpRequest对性作为第一个参数，任何的从正则中被抓取到的值将会作为关键字参数，并且，默认下，随意从字典中选择关键字参数。&lt;/p&gt;
&lt;p&gt;对于更多的&lt;a href=&quot;http://docs.djangoproject.com/ref/request-response/#django.http.HttpRequest&quot;&gt;&lt;tt&gt;HttpRequest&lt;/tt&gt;&lt;/a&gt;，参照&lt;a href=&quot;http://docs.djangoproject.com/ref/request-response/#ref-request-response&quot;&gt;&lt;em&gt;Request and response objects&lt;/em&gt;&lt;/a&gt;.对于更多的URLconfs，参照&lt;a href=&quot;http://docs.djangoproject.com/topics/http/urls/#topics-http-urls&quot;&gt;&lt;em&gt;URL dispatcher&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;当你在教程1开始运行&lt;tt&gt;django-admin.py startproject mysite&lt;/tt&gt;，它自动在mysite/urls.py中创建爱你默认的URLconfs。他同时自动设置你的&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-ROOT_URLCONF&quot;&gt;&lt;tt&gt;ROOT_URLCONF&lt;/tt&gt;&lt;/a&gt; (在 &lt;tt&gt;settings.py中&lt;/tt&gt;)指向那个文件：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;ROOT_URLCONF = 'mysite.urls'&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;例子时间。如下编辑&lt;tt&gt;mysite/urls.py：&lt;/tt&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from django.conf.urls.defaults import *

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    (r'^polls/$', 'mysite.polls.views.index'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/$', 'mysite.polls.views.detail'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/results/$', 'mysite.polls.views.results'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'mysite.polls.views.vote'),
    (r'^admin/', include(admin.site.urls)),
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;总金额是奇偶欧冠值得的回顾。当有人在你的网站请求页面时，说&amp;quot;/polls/23/&amp;quot; &lt;/p&gt;
&lt;p&gt;，Django载入这个Python模块，因为他被&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-ROOT_URLCONF&quot;&gt;&lt;tt&gt;ROOT_URLCONF&lt;/tt&gt;&lt;/a&gt;所指向。它找到名为&lt;tt&gt;urlpatterns&lt;/tt&gt;德变量，。然后依次执行正则表达式。当发现一个匹配的正则时&amp;#8212;&amp;#8211;r&amp;#8217;^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/$&amp;#8212;它载入函数detail（）从&lt;tt&gt;mysite/polls/views.py&lt;/tt&gt;.。最后，它调用函数：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;detail(request=&amp;lt;HttpRequest object&amp;gt;, poll_id='23')&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这个&lt;tt&gt;poll_id='23'&lt;/tt&gt;是从(?P&amp;lt;poll_id&amp;gt;\d+)来的，使用参数旁边的参数化来抓取符合的船体给视图函数的参数中数值；这个&lt;tt&gt;?P&amp;lt;poll_id&amp;gt;&lt;/tt&gt;定义了一个名字，他竟会用作甄别匹配模式；&lt;tt&gt;\d+&lt;/tt&gt;是正则表达式中匹配乙烯类数字的参数。&lt;/p&gt;
&lt;p&gt;因为URL模式是正则，所以你可以做任何想做的事情。么有必要添加无用的东西，比如.php&amp;#8212;&amp;#8211;除非你有这种幽默，你可以这样做：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;(r'^polls/latest\.php$', 'mysite.polls.views.index'),&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;但是，不要这样做，很傻。&lt;/p&gt;
&lt;p&gt;注意到这些正则表达式没有搜索GET和POST参数，或是域名。例如，在请求&lt;a href=&quot;http://www.example.com/myapp/&quot;&gt;http://www.example.com/myapp/&lt;/a&gt;中，URLconf将会查找myapp/。在请求&lt;tt&gt;&lt;a href=&quot;http://www.example.com/myapp/?page=3&quot;&gt;http://www.example.com/myapp/?page=3&lt;/a&gt;，会查找&lt;/tt&gt;&lt;tt&gt;myapp/&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;如果你需要正则表达式的帮助，参照&lt;a href=&quot;http://en.wikipedia.org/wiki/Regular_expression&quot;&gt;Wikipedia's entry&lt;/a&gt;and the &lt;a href=&quot;http://docs.python.org/library/re.html&quot;&gt;Python documentation&lt;/a&gt;。同样，the O'Reilly book &amp;quot;Mastering Regular Expressions&amp;quot; by Jeffrey Friedl is fantastic.&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;最后，一个明显被观察到的情况：这些正则表达式在URLconfs第一次载入时被编译。他们很快。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写你的第一个视图&lt;/font&gt;&lt;/strong&gt;&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;现在你还没有创建任何的视图---我们有了URLconfs.但是，让我们先保证Django正确运行了URLconfs.&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;运行Django服务器：&lt;/tt&gt;&lt;/p&gt;
&lt;pre&gt;python manage.py runserver&lt;/pre&gt;
&lt;p&gt;现在进入&amp;quot;&lt;a href=&quot;http://localhost:8000/polls/&quot;&gt;http://localhost:8000/polls/&lt;/a&gt;&amp;quot;。你应当看到一个漂亮的错误信息：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;ViewDoesNotExist at /polls/

Tried index in module mysite.polls.views. Error was: 'module'
object has no attribute 'index'&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;错误发生原因是你没有在&lt;tt&gt;ysite/polls/views.py中写index()函数。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&amp;quot;尝试/polls/23/&amp;quot;, &amp;quot;/polls/23/results/&amp;quot; and &amp;quot;/polls/23/vote/&amp;quot;.错误信息将会告诉你Django已经尝试了那些视图。&lt;/p&gt;
&lt;p&gt;是时间来写第一个试图了。打开mysite/polls/views.py文件，然后把如下代码放入：&lt;/p&gt;
&lt;blockquote style=&quot;width: 552px; height: 84px&quot;&gt;
&lt;pre&gt;from django.http import HttpResponse

def index(request):
    return HttpResponse(&amp;quot;Hello, world. You're at the poll index.&amp;quot;)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这是最简单的视图。在你的浏览器中进入“/polls/”然后你将会看到你的文字。&lt;/p&gt;
&lt;p&gt;现在让我们添加更多的试图。这些视图有一点不同，因为他们采用了不同的参数（在URLconfs中使用正则获取的）。&lt;/p&gt;
&lt;blockquote style=&quot;width: 567px; height: 168px&quot;&gt;
&lt;pre&gt;def detail(request, poll_id):
    return HttpResponse(&amp;quot;You're looking at poll %s.&amp;quot; % poll_id)

def results(request, poll_id):
    return HttpResponse(&amp;quot;You're looking at the results of poll %s.&amp;quot; % poll_id)

def vote(request, poll_id):
    return HttpResponse(&amp;quot;You're voting on poll %s.&amp;quot; % poll_id)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;在你的浏览器中查看“poll/34/”.它将会运行detail（）方法并且展示你输入URL的ID。尝试&amp;quot;/polls/34/results/&amp;quot; 和 &amp;quot;/polls/34/vote/&amp;quot;&amp;#8212;这些将会替换结果和投票页面。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写真正起作用的视图&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;每一个视图为两件事情之一：返回包含请求页面的HttpResponse对象，或是挂起一个404页面。剩下的在于你。&lt;/p&gt;
&lt;p&gt;你的视图能够从数据库中读取数据，或不能，他将会用一个模板就像Django的&amp;#8212;或是一个第三方的Python模板系统&amp;#8211;或不用。他将会生成一个PDF文档，生成XML，生成zip文件，或是任何你想要的事情，使用任何你想要的Python库。&lt;/p&gt;
&lt;p&gt;任何Django想要的是&lt;a href=&quot;http://docs.djangoproject.com/ref/request-response/#django.http.HttpResponse&quot;&gt;&lt;tt&gt;HttpResponse&lt;/tt&gt;&lt;/a&gt;。或是一个异常。&lt;/p&gt;
&lt;p&gt;因为很方便，就让我们使用Django自己的数据库API,我们已经在教程1中介绍了。这里有一个短代码包含于index()视图中，将会展示最新的5个投票问题，根据时间使用逗号隔开：&lt;/p&gt;
&lt;blockquote style=&quot;width: 486px; height: 147px&quot;&gt;
&lt;pre&gt;from mysite.polls.models import Poll
from django.http import HttpResponse

def index(request):
    latest_poll_list = Poll.objects.all().order_by('-pub_date')[:5]
    output = ', '.join([p.question for p in latest_poll_list])
    return HttpResponse(output)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;但是，这里还有一个问题：这些页面时在视图中进行硬编码的。如果你想改变视图样子，你必须更改Python代码。让我们使用Django的模板系统来分离设计:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;from django.template import Context, loader&lt;/p&gt;
&lt;p&gt;from mysite.polls.models import Poll&lt;/p&gt;
&lt;p&gt;from django.http import HttpResponse&lt;/p&gt;
&lt;p&gt;def index(request):&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; latest_poll_list = Poll.objects.all().order_by(&amp;#8216;-pub_date&amp;#8217;)[:5]&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; t = loader.get_template(&amp;#8216;polls/index.html&amp;#8217;)&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; c = Context({&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;#8216;latest_poll_list&amp;#8217;: latest_poll_list,&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; })&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; return HttpResponse(t.render(c))&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这段代码载入被称为“polls/index.html”的模板，然后传递给内容。这些内容是一个字典，它映射模板变量名称到Python对象。&lt;/p&gt;
&lt;p&gt;重新载入这个页面，现在你看到一条信息：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;TemplateDoesNotExist at /polls/&lt;/p&gt;
&lt;p&gt;polls/index.html&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;额，这里还没有模板。首先，创建一个路径，在你的硬盘上，Django可以进入（Django和你的服务器运行的一样。）不要把他们放在你的文档根目录下。你不应该让这些东西公开，&lt;/p&gt;
&lt;p&gt;这是为了安全原因。然后，编辑TEMPLATE_DIRS在你的setting.py文件中，使得它通知Django在哪里可以发现这个模板&amp;#8212;就像你在教程2中自定义管理界面那样。&lt;/p&gt;
&lt;p&gt;当你完成了这些，在你的模板路径中出创建一个目录polls。在这个中创建一个index.html文件。注意到我们的loader.get_template(&amp;#8216;polls/index.html&amp;#8217;)映射到系统中的“[template_directory]/polls/index.html”.&lt;/p&gt;
&lt;p&gt;把如下代码放入模板：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;{% if latest_poll_list %}&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;ul&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; {% for poll in latest_poll_list %}&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;/polls/{{ &lt;a href=&quot;http://poll.id&quot;&gt;poll.id&lt;/a&gt; }}/&amp;quot;&amp;gt;{{ poll.question }}&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; {% endfor %}&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/ul&amp;gt;&lt;/p&gt;
&lt;p&gt;{% else %}&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;p&amp;gt;No polls are available.&amp;lt;/p&amp;gt;&lt;/p&gt;
&lt;p&gt;{% endif %}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;载入你的页面，然后你将会看到一个包含“What&amp;#8217;s up”的列表。这个链接指向投票的具体信息页面。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;快捷：render_to_response()&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这是一个常用的方法来再载入模板，填充内容然后返回含有给予模板对象的HttpResponse对象。Django提供一个快捷方式。这是全部index()看起来的样子，重写以后：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;from django.shortcuts import render_to_response&lt;/p&gt;
&lt;p&gt;from mysite.polls.models import Poll&lt;/p&gt;
&lt;p&gt;def index(request):&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; latest_poll_list = Poll.objects.all().order_by(&amp;#8216;-pub_date&amp;#8217;)[:5]&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; return render_to_response(&amp;#8216;polls/index.html&amp;#8217;, {&amp;#8216;latest_poll_list&amp;#8217;: latest_poll_list})&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;注意到一旦我们已经完成了这些视图，我们就不再需要导入loader,Content和HttpResponse。&lt;/p&gt;
&lt;p&gt;render_to_respones()函数将提取第一个参数名称的模板和第二个参数为名称的字典。然后返回给定结果的模板中的HttpResponse对象。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;挂起404&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;现在，让偶我们解决详细视图&amp;#8212;一个展示给定投票问题的页面。这里是视图：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;from django.http import Http404&lt;/p&gt;
&lt;p&gt;# &amp;#8230;&lt;/p&gt;
&lt;p&gt;def detail(request, poll_id):&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; try:&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; p = Poll.objects.get(pk=poll_id)&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; except Poll.DoesNotExist:&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; raise Http404&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; return render_to_response(&amp;#8216;polls/detail.html&amp;#8217;, {&amp;#8216;poll&amp;#8217;: p})&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;一个新的原则：如果请求投票ID不存在的话就会挂起一个404错误页面。&lt;/p&gt;
&lt;p&gt;我们稍后将会讨论在polls/detail.html中存放的内容，但是，如果你想尽快看下以上的工作情况的话，就填入：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;{{ poll }}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;将会工作。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;快捷：get_object_or_404()&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这是一个常用方法使用get()和挂起Http404当一个对象不存在。Django提供一个快捷。这是detail()视图，重写以后：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;rom django.shortcuts import render_to_response, get_object_or_404&lt;/p&gt;
&lt;p&gt;# &amp;#8230;&lt;/p&gt;
&lt;p&gt;def detail(request, poll_id):&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; p = get_object_or_404(Poll, pk=poll_id)&lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; return render_to_response(&amp;#8216;polls/detail.html&amp;#8217;, {&amp;#8216;poll&amp;#8217;: p})&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这个get_object_or_404()函数将会使用Django模板作为第一个参数，关键字参数作为数字标示，他们将会被传递给get()函数。如果对象不存在将会挂起一个404错误。&lt;/p&gt;
&lt;p&gt;同样有一个get_list_or_404()函数，他和get_object_or_404（）工作原理很像&amp;#8212;-除了是使用filter()函数替代了get()函数，如果列表为空同样挂起404错误。&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写一个404（未发现）页面&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;当你在几个视图内挂起一个Http404，Django将会载入一个特殊的页面视图来控制404错误。他将会通过查找变量handler404来找到他，这是一个Python语法&amp;#8212;和URLconfs使用的一样。一个404视图并没有什么特殊：他只是一个普通的视图。&lt;/p&gt;
&lt;p&gt;你不用为了写一个404视图而烦恼。默认情况下，URLconfs包含如下：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from django.conf.urls.defaults import *&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;小心在现有的模块中设置handler404.就像你在django/conf/urls/defaults.py看到的，handler404默认指向django.views.defaults.page_not_found()。&lt;/p&gt;
&lt;p&gt;更多关于404视图：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如果DEBUG 设置为true,呢么你的404页面将永远不会被使用（404.html也将不会被传递）因为回执将会被替代。 &lt;/li&gt;
&lt;li&gt;这个404视图在Django没有找到一个符合URLconf的正则时同样被调用。 &lt;/li&gt;
&lt;li&gt;如果你不自定义404视图&amp;#8212;只是使用默认，就像推荐的那样&amp;#8212;-你仍然有一个义务：在根目录下创建一个404.html。这个404视图将会对所有的404错误产生时使用。 &lt;/li&gt;
&lt;li&gt;如果DEBUG设置为false,并且你没有创建一个404..html页面，一个Http500错误将会被挂起。所以记住创建404.html。 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写500（服务器错误）视图&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;同样，URLconfs也可以定义一个handler500，它在服务器错误时指向一个视图。当你在服务器运行时错误产生时触发服务器错误。&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;使用模板系统&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;回到我们投票程序的poll()视图。给内容变量poll,这是“polls/detail.html”模板的内容：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&amp;lt;h1&amp;gt;{{ poll.question }}&amp;lt;/h1&amp;gt;
&amp;lt;ul&amp;gt;
{% for choice in poll.choice_set.all %}
    &amp;lt;li&amp;gt;{{ choice.choice }}&amp;lt;/li&amp;gt;
{% endfor %}
&amp;lt;/ul&amp;gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;模板系统将会使用点查询语法来找到变量属性。在{{poll.questuion}}中，首先，Django在对象poll中使用字典查找。查找失败，尝试属性查找&amp;#8212;成功。如果属性查找失败，它将会尝试调用question（）方法在poll对象中。&lt;/p&gt;
&lt;p&gt;在{% for %}循环中方法调用被触发：poll.choice_set.all被解释为Python代码poll.choice_set.all()，它返回一个Choice对象，并且使用于{% for %}标签。&lt;/p&gt;
&lt;p&gt;更多参考：&lt;a href=&quot;http://docs.djangoproject.com/topics/templates/#topics-templates&quot;&gt;&lt;em&gt;template guide&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;简化URLconfs&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;花费时间来围绕视图和模板系统。当你变价URLconf时，你也许注意到其中有很多冗余：&lt;/p&gt;
&lt;blockquote style=&quot;width: 527px; height: 126px&quot;&gt;
&lt;pre&gt;urlpatterns = patterns('',
    (r'^polls/$', 'mysite.polls.views.index'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/$', 'mysite.polls.views.detail'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/results/$', 'mysite.polls.views.results'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'mysite.polls.views.vote'),
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;也就是说，mysite.polls.views在每一个回调中。&lt;/p&gt;
&lt;p&gt;因为这是一个通例，URLconf框架提供一个同样前缀的快捷。你可以提取出相同的前缀，然后把他恩价位patterns()的第一个参数，如下：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;urlpatterns = patterns('mysite.polls.views',
    (r'^polls/$', 'index'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/$', 'detail'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/results/$', 'results'),
    (r'^polls/(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'vote'),
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这和以前在功能上一致。这是简化些。&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;解耦URLconfs&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;当我们看到它时，我们应当花费点时间来解耦我们的投票程序从Django程序设置中。Django程序意味着可插入&amp;#8212;也就是说，每一个特定的应用应当在最小的更改下可以转移到另一个Django程序。&lt;/p&gt;
&lt;p&gt;我们的投票应用现在解耦很好，感谢&lt;tt&gt;python manage.py startapp&lt;/tt&gt;创建的严格的目录结构，但是有一部分和Django设置耦合：URLconf.&lt;/p&gt;
&lt;p&gt;我们已经编辑了mysite/urls.py中的URLs，但是这个URL设计于此特定的程序，而不是Django安装程序&amp;#8212;让我们将它转移到应用内部的路径。&lt;/p&gt;
&lt;p&gt;复制文件mysite/urls.py到mysite/polls/urls.py.然后改变&lt;tt&gt;mysite/urls.py，删除投票特定的URLs，然后插入一个include()函数：&lt;/tt&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;# ...
urlpatterns = patterns('',
    (r'^polls/', include('mysite.polls.urls')),
    # ...&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;include()，简单的指向另一个URLconf.注意到这个正则表达式没有包含$(末尾相符字符），但是含有一个反斜杠。当Django使用include()，它将会分割在URL中任何符合的部分，并把剩余的部分传递给被包含的URLconf。&lt;/p&gt;
&lt;p&gt;这是系统中“polls/34/”的情况：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Django发现他符合：&amp;#8217;^polls/&amp;#8217; &lt;/li&gt;
&lt;li&gt;然后，Django去除法和的文本(&lt;tt&gt;&amp;quot;polls/&amp;quot;&lt;/tt&gt;)然后传递剩下的文本&amp;quot;34/&amp;quot;，传递给&amp;#8217;mysite.polls.urls&amp;#8217;做以后的调用。 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;既然我们已经解耦了它，我们还需要通过删除行受得“polls/”来解耦‘mysite.polls.urls’的URLconf.并且删除管理站点的注册：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;urlpatterns = patterns('mysite.polls.views',
    (r'^$', 'index'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/$', 'detail'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/results/$', 'results'),
    (r'^(?P&amp;lt;poll_id&amp;gt;\d+)/vote/$', 'vote'),
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;include()和URLconf解耦背后的思想是是URL更容易插入和执行。既然polls是自己的URLconf,它可以在“/polls/”下被替代，或是在&amp;quot;/fun_polls/&amp;quot;, 或是 &amp;quot;/content/polls/&amp;quot;，抑或是任何其他程序起作用的URL路径。&lt;/p&gt;
&lt;p&gt;所有投票程序关心他的相对URL，而不是绝对URL。&lt;/p&gt;
&lt;p&gt;当你对自己的视图满意时，阅读第四部分虚席表单进程和产生视图。&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1683&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1683&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1683&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1683&amp;amp;submitHeadline=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&amp;amp;submitSummary=%E8%BF%99%E6%98%AF%E7%AC%AC%E4%BA%8C%E9%83%A8%E5%88%86%E7%9A%84%E5%BB%B6%E7%BB%AD%E3%80%82%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E5%AF%B9%E4%BA%8E%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%E7%BB%A7%E7%BB%AD%E6%8E%A2%E8%AE%A8%E5%B9%B6%E4%B8%94%E9%9B%86%E4%B8%AD%E6%B3%A8%E6%84%8F%E5%8A%9B%E5%88%B0%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%85%AC%E5%BC%80%E7%9A%84%E6%8E%A5%E5%8F%A3---%E2%80%9Cviews%E2%80%9D.%20%20%E5%AE%9A%E4%B9%89%20%20%E4%B8%80%E4%B8%AA%E8%A7%86%E5%9B%BE%E6%98%AF%E4%BD%A0%E7%9A%84Django%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E9%A1%B5%E9%9D%A2%E7%A7%8D%E7%B1%BB%EF%BC%8C%E5%AE%83%E4%B8%80%E8%88%AC%E6%9D%A5%E8%AF%B4%E6%8F%90%E4%BE%9B%E4%B8%80%E4%B8%AA%E7%89%B9%E5%AE%9A%E5%8A%9F%E8%83%BD%E5%B9%B6%E4%B8%94%E5%8C%85%E5%90%AB%E4%B8%80%E4%B8%AA%E7%89%B9%E5%AE%9A%E7%9A%84%E6%A8%A1%E6%9D%BF%E3%80%82%E4%BE%8B%E5%A6%82%EF%BC%8C%E5%9C%A8%E4%B8%80%E4%B8&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1683&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1683&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1683&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd+-+http://b2l.me/4t3hh+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F%203rd%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E8%BF%99%E6%98%AF%E7%AC%AC%E4%BA%8C%E9%83%A8%E5%88%86%E7%9A%84%E5%BB%B6%E7%BB%AD%E3%80%82%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E5%AF%B9%E4%BA%8E%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%E7%BB%A7%E7%BB%AD%E6%8E%A2%E8%AE%A8%E5%B9%B6%E4%B8%94%E9%9B%86%E4%B8%AD%E6%B3%A8%E6%84%8F%E5%8A%9B%E5%88%B0%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%85%AC%E5%BC%80%E7%9A%84%E6%8E%A5%E5%8F%A3---%E2%80%9Cviews%E2%80%9D.%20%20%E5%AE%9A%E4%B9%89%20%20%E4%B8%80%E4%B8%AA%E8%A7%86%E5%9B%BE%E6%98%AF%E4%BD%A0%E7%9A%84Django%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E9%A1%B5%E9%9D%A2%E7%A7%8D%E7%B1%BB%EF%BC%8C%E5%AE%83%E4%B8%80%E8%88%AC%E6%9D%A5%E8%AF%B4%E6%8F%90%E4%BE%9B%E4%B8%80%E4%B8%AA%E7%89%B9%E5%AE%9A%E5%8A%9F%E8%83%BD%E5%B9%B6%E4%B8%94%E5%8C%85%E5%90%AB%E4%B8%80%E4%B8%AA%E7%89%B9%E5%AE%9A%E7%9A%84%E6%A8%A1%E6%9D%BF%E3%80%82%E4%BE%8B%E5%A6%82%EF%BC%8C%E5%9C%A8%E4%B8%80%E4%B8%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1683&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1683/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&amp;amp;link=http://www.shui.us/archives/1683&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1683&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1683&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+3rd&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1683&quot;&gt;写你的第一个Django程序 3rd&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1683#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/django&quot; rel=&quot;tag&quot;&gt;django&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874780/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1683&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874780/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874780/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=842d89a6478069fc0db98dcdc07e4b0e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=842d89a6478069fc0db98dcdc07e4b0e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=23f295db0f081248ea5a2eef8c5ed216&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=23f295db0f081248ea5a2eef8c5ed216&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=87aa47eab59196bfebfea4119ec43b1a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=87aa47eab59196bfebfea4119ec43b1a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=095004564b0985c613c124d08fd36c95&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=095004564b0985c613c124d08fd36c95&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=219f6c6f4cf93389cfeabdf1fea40314&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=219f6c6f4cf93389cfeabdf1fea40314&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=00d34483932deb7eaa4c06c410e8db30&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=00d34483932deb7eaa4c06c410e8db30&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=435df4cee409e74f59371b76188755f7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=435df4cee409e74f59371b76188755f7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1683/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;这是第二部分的延续。我们将会对于投票程序继续探讨并且集中注意力到如何创建一个公开的接口---“views”.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;定义&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;一个视图是你的Django程序中的页面种类，它一般来说提供一个特定功能并且包含一个特定的模板。例如，在一个博客程序中，你也许会包含一些视图：&lt;/p&gt;&lt;p&gt;博客首页---展现最新的文章 &lt;/p&gt;&lt;p&gt;文章“详细”页面---一个文章的永久页 &lt;/p&gt;&lt;p&gt;基于年的汇总页----展示某一年中所有月份的文章 &lt;/p&gt;&lt;p&gt;基于月的汇总页----展示某一个月的所有文章 &lt;/p&gt;&lt;p&gt;基于天的汇总页----展示某一天的搜有文章 &lt;/p&gt;&lt;p&gt;留言---对于一个文章的留言句柄  &lt;/p&gt;&lt;p&gt;在我们的投票程序中，我们已经有了如下的四个视图：&lt;/p&gt;&lt;p&gt;“archive”页----展示最新的投票 &lt;/p&gt;&lt;p&gt;“detail”页------投票的所有问题，没有结果，但是含有投票框 &lt;/p&gt;&lt;p&gt;“results”页----某一个投票问题的结果 &lt;/p&gt;&lt;p&gt;vote-----对某一个投票问题投某一票的句柄  &lt;/p&gt;&lt;p&gt;在Django中，每一个页面使用过一个简单的Python函数来展现的。&lt;/p&gt;  &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1683'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874780/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1683&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874780/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874780/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=842d89a6478069fc0db98dcdc07e4b0e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=842d89a6478069fc0db98dcdc07e4b0e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=23f295db0f081248ea5a2eef8c5ed216&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=23f295db0f081248ea5a2eef8c5ed216&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=87aa47eab59196bfebfea4119ec43b1a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=87aa47eab59196bfebfea4119ec43b1a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=095004564b0985c613c124d08fd36c95&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=095004564b0985c613c124d08fd36c95&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=219f6c6f4cf93389cfeabdf1fea40314&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=219f6c6f4cf93389cfeabdf1fea40314&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=00d34483932deb7eaa4c06c410e8db30&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=00d34483932deb7eaa4c06c410e8db30&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=435df4cee409e74f59371b76188755f7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=435df4cee409e74f59371b76188755f7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>django</category><category>Think</category><pubDate>Sat, 19 Jun 2010 11:32:56 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1683#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1683</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1683</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874780/5895338</fs:itemid></item><item><title>写你的第一个Django程序 2nd</title><link>http://www.shui.us/archives/1682</link><content:encoded>&lt;p class='fp'&gt;这是接着第一部分的教程。我们将会继续完成投票程序并且把注意力放到Django的自动管理生成站点上。&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;4&quot;&gt;&lt;strong&gt;激活管理站点&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Django的管理站点默认不是激活的&amp;#8212;这是一个可选项。为了激活你的管理站，作如下的三件事：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;添加&lt;tt&gt;&amp;quot;django.contrib.admin&amp;quot;&lt;/tt&gt;到你的 &lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-INSTALLED_APPS&quot;&gt;&lt;tt&gt;INSTALLED_APPS&lt;/tt&gt;&lt;/a&gt; 设置中 &lt;/li&gt;
&lt;li&gt;运行&lt;tt&gt;python manage.py syncdb&lt;/tt&gt; &lt;/li&gt;
&lt;li&gt;编辑 &lt;tt&gt;mysite/urls.py&lt;/tt&gt;文件并且去除&amp;#160; admin前面的注释&amp;#8212; 共有三行需要去除注释。这是一个URLconf，我们将会在以后的教程中深入讨论，现在你所要知道的是他是一个URL路径的映射，最后你的urls.py文件应该看起来是这个样子的： &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt; &lt;span id=&quot;more-1682&quot;&gt;&lt;/span&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;from django.conf.urls.defaults import *      &lt;/p&gt;
&lt;p&gt;# Uncomment the next two lines to enable the admin:       &lt;br /&gt;&lt;strong&gt;from django.contrib import admin&lt;/strong&gt;       &lt;br /&gt;&lt;strong&gt;admin.autodiscover()&lt;/strong&gt;       &lt;/p&gt;
&lt;p&gt;urlpatterns = patterns(&amp;#8221;,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; # Example:       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; # (r&amp;#8217;^mysite/&amp;#8217;, include(&amp;#8216;mysite.foo.urls&amp;#8217;)),       &lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; # Uncomment the admin/doc line below and add &amp;#8216;django.contrib.admindocs&amp;#8217;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; # to INSTALLED_APPS to enable admin documentation:       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; # (r&amp;#8217;^admin/doc/&amp;#8217;, include(&amp;#8216;django.contrib.admindocs.urls&amp;#8217;)),       &lt;/p&gt;
&lt;p&gt;&amp;#160;&amp;#160;&amp;#160; # Uncomment the next line to enable the admin:       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;(r&amp;#8217;^admin/&amp;#8217;, include(‘admin.site.urls’)),&lt;/strong&gt;       &lt;br /&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;启动开发服务器&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;让我们启动开发服务器探寻管理站点。回忆教程1中所教授的启动服务器的方法：&lt;/p&gt;
&lt;pre&gt;python manage.py runserver&lt;/pre&gt;
&lt;p&gt;现在，打开一个浏览器并且进入“/admin/ &amp;quot;在你的主机上&amp;#8212;-例如，&lt;a href=&quot;http://127.0.0.1:8000/admin/&quot;&gt;http://127.0.0.1:8000/admin/&lt;/a&gt;。你应该会看到如下的登陆界面：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin01.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; title=&quot;admin01&quot; border=&quot;0&quot; alt=&quot;admin01&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin01_thumb.png&quot; width=&quot;277&quot; height=&quot;160&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;进入管理站点&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;现在，尝试登陆。（在教程1中你创建了一个超级管理员，记得吗？如果你忘记了就需要在创建一个。）你将会看到如下的管理界面：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin02t.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;admin02t&quot; border=&quot;0&quot; alt=&quot;admin02t&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin02t_thumb.png&quot; width=&quot;512&quot; height=&quot;141&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;你应当看到一些可编辑的选项，包括组、用户和站点。这些是Django的默认属性。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;让投票程序在管理站点可用&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;但是我们的投票程序呢？他没有在管理站点显示。&lt;/p&gt;
&lt;p&gt;只需要做一件事情：我们需要告诉管理站，Poll对象有一个管理接口。为了这样做，我们创建一个admin.py文件在polls文件夹中，然后编辑这个文件：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from mysite.polls.models import Poll
from django.contrib import admin

admin.site.register(Poll)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;你需要重新启动开发服务器来看到变化。一般来说，服务器将会重新载入当有文件改变时，但是这个变化却不会触发自动重启逻辑。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;探索管理站点的功能&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;既然我们注册了poll，Django知道它将会被展示到起始页面：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin03t.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;admin03t&quot; border=&quot;0&quot; alt=&quot;admin03t&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin03t_thumb.png&quot; width=&quot;517&quot; height=&quot;180&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;点击：{Poll。现在你在“change list”页面中了。这个页面展示所有的数据库投票并且你可以有选择的更改。这里有一个“What’s up？”投票：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin04t.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;admin04t&quot; border=&quot;0&quot; alt=&quot;admin04t&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin04t_thumb.png&quot; width=&quot;516&quot; height=&quot;144&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;点击“What&amp;#8217;s up?”投票并编辑：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin05t.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;admin05t&quot; border=&quot;0&quot; alt=&quot;admin05t&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin05t_thumb.png&quot; width=&quot;523&quot; height=&quot;180&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;需要注意的事情：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;这个页面自动从Poll模块生成 &lt;/li&gt;
&lt;li&gt;不同的模块属性（DateTimeField,CharField）对应不同的HTMl代码。每一种属性知道如何在Django站点表现自己。 &lt;/li&gt;
&lt;li&gt;每一个DateTimeField有JavaScript快捷方式。这个页面的底部给你一些列的选项： &lt;/li&gt;
&lt;li&gt;Save&amp;#8212;保存更改并将返回到change-list页面 &lt;/li&gt;
&lt;li&gt;Save and continue editing&amp;#8212;-保存更改然后重新加载 &lt;/li&gt;
&lt;li&gt;Save and add another&amp;#8212;-保存更改并添加一个新的空的对象 &lt;/li&gt;
&lt;li&gt;Delete&amp;#8212;-删除一个信息 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;改变发布时间通过点击“Today”或是“Now”.然后点击“Save and continue editing”。然后点击右上方的“History”，你将会看到通过Django管理站点进行的所有更改操作&amp;#8212;包含时间和用户：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin06t.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; title=&quot;admin06t&quot; border=&quot;0&quot; alt=&quot;admin06t&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/admin06t_thumb.png&quot; width=&quot;244&quot; height=&quot;51&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;自定义管理框&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;花几分钟惊叹于节省的代码。通过使用admin.site.register(Poll)注册投票模块，Django能够构造表格的表现形式。经常，你想自己定义管理页面的外观和工作模式。你可以通过告知Django你想定义的选项。&lt;/p&gt;
&lt;p&gt;让我们看看通过再次定义块来编辑表格是如何工作的。使用如下来替换admin.site.register(Poll):&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;class PollAdmin(admin.ModelAdmin):
    fields = ['pub_date', 'question']

admin.site.register(Poll, PollAdmin)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;你可以使用如下模式&amp;#8212;创建一个管理员对象，然后将它传递给admin.site.register()作为第二个参数&amp;#8212;任何你在任何时间来通知管理项。&lt;/p&gt;
&lt;p&gt;上边这个将“Publish date”放在“Question”前面：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/11.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; title=&quot;11&quot; border=&quot;0&quot; alt=&quot;11&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/11_thumb.png&quot; width=&quot;244&quot; height=&quot;164&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;对于只有两块的表格来说，这些不令人印象深刻。但是如果对于几十块的管理界面。选择一个模块将是一个重要的可用性模块。&lt;/p&gt;
&lt;p&gt;当提及几十块的表格时，你也许希望将这个分割成块：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;class PollAdmin(admin.ModelAdmin):
    fieldsets = [
        (None,               {'fields': ['question']}),
        ('Date information', {'fields': ['pub_date']}),
    ]

admin.site.register(Poll, PollAdmin)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;在块组中各元组的第一元素是这个快组的名字。这是他们的样子：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/12.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;12&quot; border=&quot;0&quot; alt=&quot;12&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/12_thumb.png&quot; width=&quot;471&quot; height=&quot;174&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;你可以将HTML的类性质给予每个块。Django提供一个“collapse”类，它能够通过默认方式展现块。当你的长表单中包含不经常用的模块时，浙江会非常有用：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/121.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;121&quot; border=&quot;0&quot; alt=&quot;121&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/121_thumb.png&quot; width=&quot;371&quot; height=&quot;218&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;添加关联对象&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;好了，我们已经有了管理界面。但是，一个投票（Poll）含有多个选项(Choices)，但是管理页面并不显示这些选项。&lt;/p&gt;
&lt;p&gt;起码来说现在还没有。&lt;/p&gt;
&lt;p&gt;有两种方式来解决这个问题。一个是就像我们对于Poll做得那样来注册Choice模块。这很简单：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;from mysite.polls.models import Choice

admin.site.register(Choice)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;现在“Choices”已经在Django的管理页面中可用了。这个“Add choice”表单看起来就像这样：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/122.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;122&quot; border=&quot;0&quot; alt=&quot;122&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/122_thumb.png&quot; width=&quot;356&quot; height=&quot;253&quot; /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;在这个表中，“Poll”是包含数据库中每一个投票的下拉列表。Django知道每一个外键应当使用一个选择框来呈现。在我们的例子中，现在只有一个投票存在。&lt;/p&gt;
&lt;p&gt;同样注意到“Add Another”连接到“Poll”。每一个含有外键的对象将会得到另一个。当你添加“Add Another”，你将会得到一个含有“Add poll”表单的弹出窗口。如果你在这个窗口中添加一个投票并点击“Save”，Django将会将这个投票保存到数据库中并且动态将其作为“Add choice”中的选择值添加进来。&lt;/p&gt;
&lt;p&gt;但是，这的确不是一个方便的方法来添加选项对象到系统中。如果你能够在创建一个投票对象的同时添加一系列选项将会更好。让我们实现它。&lt;/p&gt;
&lt;p&gt;为选项模块移除这个register（）调用。然后，编辑这个Poll的注册模块:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;class ChoiceInline(admin.StackedInline):
    model = Choice
    extra = 3

class PollAdmin(admin.ModelAdmin):
    fieldsets = [
        (None,               {'fields': ['question']}),
        ('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}),
    ]
    inlines = [ChoiceInline]

admin.site.register(Poll, PollAdmin)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这个告诉Django：“选项对象将会在管理界面被添加。默认提供三个选项”。&lt;/p&gt;
&lt;p&gt;载入这个“Add poll”，看看发生了什么：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/123.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;123&quot; border=&quot;0&quot; alt=&quot;123&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/123_thumb.png&quot; width=&quot;345&quot; height=&quot;238&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;着看起来：将会有三个选项的关联&amp;#8212;-通过“extra”来确定&amp;#8212;&amp;#8211;当你每次返回到“change”页面的时候，你将会得到额外的三个对象。&lt;/p&gt;
&lt;p&gt;尽管是一个小问题。但是将会占据很多屏幕空间来展示选项的关联对象。因此。Django提供一个行内关联属性来解决这一问题；你只需要改变对ChoiceInline的声明如下：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;class ChoiceInline(admin.TabularInline):
    #...&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;使用这个TabularInline(替换StackedInline),关联属性将会被放置到一个表格内：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/125.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;125&quot; border=&quot;0&quot; alt=&quot;125&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/125_thumb.png&quot; width=&quot;332&quot; height=&quot;260&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;自定义管理员更改列表&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;现在的投票页面看起来已经不错了，现在让我们对”change list“页面做点更改&amp;#8212;这个页面用来展示系统中的所有投票。&lt;/p&gt;
&lt;p&gt;这是现在的外观：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/126.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;126&quot; border=&quot;0&quot; alt=&quot;126&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/126_thumb.png&quot; width=&quot;499&quot; height=&quot;139&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;默认，Django展示每个对象的str()属性。但是在有些情况下展现单独的域将会更加有用。为了达到这个目的，使用list_display的管理员选项，这将会展示一个元组的名称作为列名，在对象的更改页面：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;class PollAdmin(admin.ModelAdmin):
    # ...
    list_display = ('question', 'pub_date')&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;做更多好的改动，让我们包含教程1中was_published_today这个默认方法：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;class PollAdmin(admin.ModelAdmin):
    # ...
    list_display = ('question', 'pub_date', 'was_published_today')&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;现在这个投票更改页面将会看起来想这个样子：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/127.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;127&quot; border=&quot;0&quot; alt=&quot;127&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/127_thumb.png&quot; width=&quot;518&quot; height=&quot;144&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;你可以通过点击列名来根据值自动排序&amp;#8212;-除了was_published_today这个列，因为逻辑的自动排序不被支持。同时，注意到was_published_today列名默认是他的方法名（使用空格代替了下划线）。但是，你可以通过给这个方法一个short_description属性来更改列名：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;def was_published_today(self):
    return self.pub_date.date() == datetime.date.today()
was_published_today.short_description = 'Published today?'&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;让我们添加另一个提升方法：筛选.添加如下行到PollAdmin:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;list_filter = ['pub_date']&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这将会添加一个“Filter”的侧边栏，它允许人们通过pub_date属性来筛选列表：&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/129.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;129&quot; border=&quot;0&quot; alt=&quot;129&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/129_thumb.png&quot; width=&quot;498&quot; height=&quot;171&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;分类的方式将会取决于你所筛选的属性。因为pub_date是一个DateTimeField属性，Django知道给予DateTimeFields默认的筛选值：&amp;quot;Any date,&amp;quot; &amp;quot;Today,&amp;quot; &amp;quot;Past 7 days,&amp;quot; &amp;quot;This month,&amp;quot; &amp;quot;This year.&amp;quot;&lt;/p&gt;
&lt;p&gt;他的可造型强。让我们添加一些搜索属性：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;search_fields = ['question']&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这将会在每一个更改页面的头部添加一个搜索框。当任何人输入搜索与属性以后，Django将会搜索question域。你可以使用多个属性域&amp;#8212;背后它使用了一个LIKE查询，使其具有说服力，并使你的数据库愉悦。？？&lt;/p&gt;
&lt;p&gt;左右，因为投票含有时间，如果能够根据时间排序，将会非常便捷。我们可以添加如下行“&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;date_hierarchy = 'pub_date'&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;这将会在页面顶部添加一个根据时间的阶级式的导航。在最高层，它显示所有的年。然后，是月份，最后是天。&lt;/p&gt;
&lt;p&gt;现在是个好时机来注意改变列表给你分页的能力。默认是每一个页面展示50项。改变列表导航、搜索框、筛选、时间列和列名排序都如你所愿的在一起实现了。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;自定义管理站的外观和感觉&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;很明显，在每一个管理页面含有“Django administration”是很荒谬的。这个只是文字。&lt;/p&gt;
&lt;p&gt;然而使用Django系统模板将会很容易改变。Django管理站是Django支持的，因此它的接口使用Django自己的模板系统。&lt;/p&gt;
&lt;p&gt;打开你的设置文件（记住，mysite/settings.py）,然后查找TEMPLATE_DIRS设置项。他是载入Django模板时将会检查的系统路径列表。他是一个搜索路径。&lt;/p&gt;
&lt;p&gt;默认为空。所以，让我们添加一行，告诉Django我们的模板在哪里：&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;TEMPLATE_DIRS = (
    &amp;quot;/home/my_username/mytemplates&amp;quot;, # Change this to your own directory.
)&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;现在复制源代码(&lt;tt&gt;django/contrib/admin/templates&lt;/tt&gt;)中的管理员模板路径中的模板&lt;tt&gt;admin/base_site.html至一个你在TEMPLATE_DIRS中所使用的二级目录下。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;例如，如果你的TEMPLAte_DIRS中半酣“/home/my_username/mytemplates”,就像上边，然后复制django/contrib/admin/templates/admin/base_site.html到/home/my_username/mytemplates/admin/base_site.html。不要妄加admin这个二级目录。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;然后，编辑这个文件，然后使用你的站点名称来替换Django的文字。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;这个模板文件包含许多文本比如&lt;/tt&gt;&lt;tt&gt;{% block branding %}&lt;/tt&gt; and&lt;tt&gt;{{ title }}.&lt;/tt&gt;&lt;tt&gt;``{%&lt;/tt&gt; and &lt;tt&gt;{{&lt;/tt&gt; tags是Django模板的一部分。当Django生成admin/base_site.htm时，这个模板语言将会解释并最后生成HTML页面。不要着急你还不会任何模板语言&amp;#8212;我们将会在教程3中探讨。&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;注意到任何Django的管理模板可以被重写。为了重写一个模板，对base_site.html做重复的事情--复制它从默认路径到你的自定义路径，然后修改。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;精明的读者将会问：但是TEMPLATE_DIRS默认为空，那么Django如何找到默认的管理模板？答案是，默认情况下，Django自动找每一个程序包的templates/子目录来调用。更多，阅读：&lt;a href=&quot;http://docs.djangoproject.com/ref/templates/api/#template-loaders&quot;&gt;&lt;em&gt;template loader documentation&lt;/em&gt;&lt;/a&gt;。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;自定义管理站点首页&lt;/font&gt;&lt;/strong&gt;&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;同样，你也许项自定义Django管理首页的外观和感觉。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;默认情况下，它按照字母顺序展示通过管理项注册的所有模块。你也许想对外观做点出奇的更改。总之，首页也许是管理站的最重要的页面，并且也是最容易修改的。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;自定义的模板是admin/index.html。（使用之前对于admin/base_site.html所做的修改---复制至你的自定义模板目录。）编辑这个文件，你将会看到它使用了一个变量：app_list.它包含所有安装的Django应用。你可以通过硬编码连接到特定的对象页面来替换它以达到你所认为的最好效果。再次，不要对于还不知道模板语言而着急---我们将会在第三部分中详细介绍。&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;&lt;/tt&gt;&lt;tt&gt;当你对于这一块熟悉以后，开始我们的第三部分教程。&lt;/tt&gt;&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1682&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1682&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1682&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1682&amp;amp;submitHeadline=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&amp;amp;submitSummary=%E8%BF%99%E6%98%AF%E6%8E%A5%E7%9D%80%E7%AC%AC%E4%B8%80%E9%83%A8%E5%88%86%E7%9A%84%E6%95%99%E7%A8%8B%E3%80%82%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E7%BB%A7%E7%BB%AD%E5%AE%8C%E6%88%90%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%E5%B9%B6%E4%B8%94%E6%8A%8A%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%94%BE%E5%88%B0Django%E7%9A%84%E8%87%AA%E5%8A%A8%E7%AE%A1%E7%90%86%E7%94%9F%E6%88%90%E7%AB%99%E7%82%B9%E4%B8%8A%E3%80%82%20%20%E6%BF%80%E6%B4%BB%E7%AE%A1%E7%90%86%E7%AB%99%E7%82%B9%20%20Django%E7%9A%84%E7%AE%A1%E7%90%86%E7%AB%99%E7%82%B9%E9%BB%98%E8%AE%A4%E4%B8%8D%E6%98%AF%E6%BF%80%E6%B4%BB%E7%9A%84---%E8%BF%99%E6%98%AF%E4%B8%80%E4%B8%AA%E5%8F%AF%E9%80%89%E9%A1%B9%E3%80%82%E4%B8%BA%E4%BA%86%E6%BF%80%E6%B4%BB%E4%BD%A0%E7%9A%84%E7%AE%A1%E7%90%86%E7%AB%99%EF%BC%8C%E4%BD%9C%E5%A6%82%E4%B8%8B%E7%9A%84%E4%B8%89%E4%BB%B6%E4%BA%8B%EF%BC%9A%20%20%20%20%20%E6%B7%BB%E5%8A%A0%26quot%3Bdja&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1682&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1682&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1682&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd+-+http://b2l.me/4tus2+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F%202nd%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E8%BF%99%E6%98%AF%E6%8E%A5%E7%9D%80%E7%AC%AC%E4%B8%80%E9%83%A8%E5%88%86%E7%9A%84%E6%95%99%E7%A8%8B%E3%80%82%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E7%BB%A7%E7%BB%AD%E5%AE%8C%E6%88%90%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%E5%B9%B6%E4%B8%94%E6%8A%8A%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%94%BE%E5%88%B0Django%E7%9A%84%E8%87%AA%E5%8A%A8%E7%AE%A1%E7%90%86%E7%94%9F%E6%88%90%E7%AB%99%E7%82%B9%E4%B8%8A%E3%80%82%20%20%E6%BF%80%E6%B4%BB%E7%AE%A1%E7%90%86%E7%AB%99%E7%82%B9%20%20Django%E7%9A%84%E7%AE%A1%E7%90%86%E7%AB%99%E7%82%B9%E9%BB%98%E8%AE%A4%E4%B8%8D%E6%98%AF%E6%BF%80%E6%B4%BB%E7%9A%84---%E8%BF%99%E6%98%AF%E4%B8%80%E4%B8%AA%E5%8F%AF%E9%80%89%E9%A1%B9%E3%80%82%E4%B8%BA%E4%BA%86%E6%BF%80%E6%B4%BB%E4%BD%A0%E7%9A%84%E7%AE%A1%E7%90%86%E7%AB%99%EF%BC%8C%E4%BD%9C%E5%A6%82%E4%B8%8B%E7%9A%84%E4%B8%89%E4%BB%B6%E4%BA%8B%EF%BC%9A%20%20%20%20%20%E6%B7%BB%E5%8A%A0%26quot%3Bdja%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1682&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1682/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&amp;amp;link=http://www.shui.us/archives/1682&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1682&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1682&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+2nd&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1682&quot;&gt;写你的第一个Django程序 2nd&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1682#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/django&quot; rel=&quot;tag&quot;&gt;django&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874787/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1682&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874787/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874787/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c7816f1a256a70c1f2b271d359ea892b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c7816f1a256a70c1f2b271d359ea892b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=4ec832c2e9378b7c88a929655e8fdf90&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=4ec832c2e9378b7c88a929655e8fdf90&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=cf22b23fbb8eece99d938d53d97f5a56&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=cf22b23fbb8eece99d938d53d97f5a56&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=0902d28f5830dde7a32943cbadd27f18&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=0902d28f5830dde7a32943cbadd27f18&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=2a23b52f954146c26e02ea2149969836&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=2a23b52f954146c26e02ea2149969836&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=35877c98e10ef9a5e33d09f2504c68d6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=35877c98e10ef9a5e33d09f2504c68d6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=25d66c47baafbda7d1e71210ae5c0e64&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=25d66c47baafbda7d1e71210ae5c0e64&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1682/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;这是接着第一部分的教程。我们将会继续完成投票程序并且把注意力放到Django的自动管理生成站点上。&lt;/p&gt;&lt;p&gt;&lt;font size=&quot;4&quot;&gt;&lt;strong&gt;激活管理站点&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;Django的管理站点默认不是激活的---这是一个可选项。为了激活你的管理站，作如下的三件事：&lt;/p&gt;&lt;p&gt;添加&amp;#34;django.contrib.admin&amp;#34;到你的 &lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-INSTALLED_APPS&quot;&gt;INSTALLED_APPS&lt;/a&gt; 设置中 &lt;/p&gt;&lt;p&gt;运行python manage.py syncdb &lt;/p&gt;&lt;p&gt;编辑 mysite/urls.py文件并且去除&amp;#160; admin前面的注释--- 共有三行需要去除注释。这是一个URLconf，我们将会在以后的教程中深入讨论，现在你所要知道的是他是一个URL路径的映射，最后你的urls.py文件应该看起来是这个样子的：    &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1682'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874787/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1682&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874787/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874787/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c7816f1a256a70c1f2b271d359ea892b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c7816f1a256a70c1f2b271d359ea892b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=4ec832c2e9378b7c88a929655e8fdf90&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=4ec832c2e9378b7c88a929655e8fdf90&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=cf22b23fbb8eece99d938d53d97f5a56&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=cf22b23fbb8eece99d938d53d97f5a56&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=0902d28f5830dde7a32943cbadd27f18&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=0902d28f5830dde7a32943cbadd27f18&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=2a23b52f954146c26e02ea2149969836&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=2a23b52f954146c26e02ea2149969836&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=35877c98e10ef9a5e33d09f2504c68d6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=35877c98e10ef9a5e33d09f2504c68d6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=25d66c47baafbda7d1e71210ae5c0e64&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=25d66c47baafbda7d1e71210ae5c0e64&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>django</category><category>Think</category><pubDate>Sat, 19 Jun 2010 10:48:33 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1682#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1682</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1682</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874787/5895338</fs:itemid></item><item><title>写你的第一个Django程序 1st</title><link>http://www.shui.us/archives/1649</link><content:encoded>&lt;p class='fp'&gt;让我们通过例子来学习。&lt;/p&gt;
&lt;p&gt;通过这个教程，我们将会全程经历创建基本的投票程序的创建过程。&lt;/p&gt;
&lt;p&gt;它将包含两个部分：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; 一个公开的站点，让人们来查看投票并且参与投票&lt;/li&gt;
&lt;li&gt;一个管理员站点，使你可以添加、删除、修改投票&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;我们假设你已经安装好了Django。你可以通过Python的命令行来判断是否将Django安装完成，输入import Django。如果命令行成功运行，Django即为正确安装。&lt;/p&gt;
&lt;p&gt;创建一个项目&lt;/p&gt;
&lt;p&gt;这是你第一次使用Django，你必须注意一些初始化操作。也就是说，你必须自动创建一些代码来建立一个Django项目&amp;#8211;一个Django项目的一系列设置，包括数据库设置、Django特殊设置和应用程序设置。&lt;/p&gt;
&lt;p&gt;在命令行，cd进入一个目录，在这里你可以存储你的代码，然后运行指令django-admin.py startproject mysite。这将会创建一个mysite目录在当前目录下。&lt;/p&gt;
&lt;p&gt;如果你是通过python setup.py安装Django，那么django-admin.py应当在你的系统路径中。如果没有存在，你可以在site-packges/django/bin中发现它，这就是你的site-packages在Python中的目录。考虑到对性django-admin.py的链接从你的路径的某些地方，例如/usr/local/bin。&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-1649&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;让我们看看startproject创建了什么文件：&lt;/p&gt;
&lt;pre&gt;mysite/
    __init__.py
    manage.py
    settings.py
    urls.py&lt;/pre&gt;
&lt;p&gt;这些文件是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;__init__.py:一个空的文件告诉Python这个路径应当被当做一个Python包。&lt;/li&gt;
&lt;li&gt;manage.py:一个命令行，允许你通过各种方式和Django项目交互。你可以阅读更多通过&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#ref-django-admin&quot;&gt;&lt;em&gt;django-admin.py and manage.py&lt;/em&gt;&lt;/a&gt;。&lt;/li&gt;
&lt;li&gt;settings.py:设置/配置Django项目。&lt;a href=&quot;http://docs.djangoproject.com/topics/settings/#topics-settings&quot;&gt;&lt;em&gt;Django settings&lt;/em&gt;&lt;/a&gt;将会告诉它是如何工作的。&lt;/li&gt;
&lt;li&gt;urls.py:这个URL为项目声明。一个关于你Django驱动的内容表。你可以阅读更多通过&lt;a href=&quot;http://docs.djangoproject.com/topics/http/urls/#topics-http-urls&quot;&gt;&lt;em&gt;URL dispatcher&lt;/em&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;开发服务器&lt;/p&gt;
&lt;p&gt;让我们运行它。进入，mysite目录，运行命令行：python manage.py runserver。你将会看到如下的输出：&lt;/p&gt;
&lt;pre&gt;Validating models...
0 errors found.

Django version 1.0, using settings 'mysite.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.&lt;/pre&gt;
&lt;p&gt;你已经启动了Django开发服务器，一个使用Python写的轻量的web服务器。我们已经将其包含在Django中，这样你就能够立即开发项目而不用考虑配置服务器&amp;#8211;比如Apache&amp;#8212;在你发布产品之前。&lt;/p&gt;
&lt;p&gt;现在是一个好的时机注意：不要再任何产品中包含此服务器的引用。它只是用来进行开发。&lt;/p&gt;
&lt;p&gt;现在服务器已经运行，通过&lt;a href=&quot;http://127.0.0.1:8000/&quot;&gt;http://127.0.0.1:8000/&lt;/a&gt;访问你的站点。你将会看到一个蓝色、愉快色调的“Welcome to Django”页面。它成功运行了。&lt;/p&gt;
&lt;table border=&quot;1&quot; cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;400&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width=&quot;400&quot; valign=&quot;top&quot;&gt;改变端口&lt;/p&gt;
&lt;p&gt;默认情况下，runserver将项目的初始端口设置为8000。&lt;/p&gt;
&lt;p&gt;如果你想改变这个端口，输入命令行参数。例如，你可以设置为8080端口：&lt;/p&gt;
&lt;pre&gt;python manage.py runserver 8080&lt;/pre&gt;
&lt;p&gt;如果你想改变ip地址，输入如下指令。这样将会侦听所有公用IP:&lt;/p&gt;
&lt;pre&gt;python manage.py runserver 0.0.0.0:8000&lt;/pre&gt;
&lt;p&gt;更多：&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-runserver&quot;&gt;&lt;tt&gt;runserver&lt;/tt&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;建立数据库&lt;/p&gt;
&lt;p&gt;现在，编辑settings.py。这是一个普通的Python模块，通过它反映Django的模块层。改变如下的&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-DATABASES&quot;&gt;&lt;tt&gt;DATABASES&lt;/tt&gt;&lt;/a&gt; &lt;tt&gt;'default'&lt;/tt&gt;使其符合你的连接设置。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-ENGINE&quot;&gt;&lt;tt&gt;ENGINE&lt;/tt&gt;&lt;/a&gt;&amp;#8212;&lt;tt&gt;'django.db.backends.postgresql_psycopg2'&lt;/tt&gt;,&lt;tt&gt;'django.db.backends.mysql'&lt;/tt&gt; o或是&lt;tt&gt;'django.db.backends.sqlite3'&lt;/tt&gt;.其他参见&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-ENGINE&quot;&gt;&lt;tt&gt;also available&lt;/tt&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-NAME&quot;&gt;&lt;tt&gt;NAME&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 你的数据库名.如果你在使用sqllite，它将是你的电脑上的一个文件，这样的话，name将是他的全路径，包括温江名。如果这个文件不存在，将会被自动建立在你同步数据库时。&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-USER&quot;&gt;&lt;tt&gt;USER&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 你的数据库用户名 (not used for SQLite).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-PASSWORD&quot;&gt;&lt;tt&gt;PASSWORD&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 你的数据库密码(not used for SQLite).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-HOST&quot;&gt;&lt;tt&gt;HOST&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 数据库所在地址. 当你的项目和数据库在同一台计算机时可以留空 (not used for SQLite).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果你对于数据库时新手，我们强力建议你使用SQLite.它被包含在Python 2.5及其后版本中，所以你不用安装其他任何东西。&lt;/p&gt;
&lt;p&gt;当你编辑settings.py是，注意&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-INSTALLED_APPS&quot;&gt;&lt;tt&gt;INSTALLED_APPS&lt;/tt&gt;&lt;/a&gt;于文件的底部。这个变量包含Django中所有激活的模块。程勋可以被不同的项目中被使用，你可以打包并且把他们适用于任何项目。&lt;/p&gt;
&lt;p&gt;默认情况下，INSTALL_APPS包含如下的程序，他们默认在Django中。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/topics/auth/#module-django.contrib.auth&quot;&gt;&lt;tt&gt;django.contrib.auth&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 认证系统。&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/contrib/contenttypes/#module-django.contrib.contenttypes&quot;&gt;&lt;tt&gt;django.contrib.contenttypes&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 内容类型框架.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/topics/http/sessions/#module-django.contrib.sessions&quot;&gt;&lt;tt&gt;django.contrib.sessions&lt;/tt&gt;&lt;/a&gt; &amp;#8212; session框架.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/contrib/sites/#module-django.contrib.sites&quot;&gt;&lt;tt&gt;django.contrib.sites&lt;/tt&gt;&lt;/a&gt; &amp;#8212; 在一个Django中管理不同站点框架.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这些程序默认情况下被包含。&lt;/p&gt;
&lt;p&gt;这些程序至少使用一个数据库表，所以我们创建数据库表在我们使用它们之前。为了做到如此，使用如下的命令：&lt;/p&gt;
&lt;pre&gt;python manage.py syncdb&lt;/pre&gt;
&lt;p&gt;这个syncdb命令查找所有的INSTSLL_APPS设置并且通过数据库表设置文件settings.py来创建数据库表。在每个数据库表被创建时你将会看到一条信息，然后你将被询问是否创建一个超级管理员为认证系统。确认并且创建。&lt;/p&gt;
&lt;p&gt;如果你感兴趣，你可以运行命令行为你的数据库，然后输入&lt;tt&gt;\dt&lt;/tt&gt; (PostgreSQL), &lt;tt&gt;SHOW TABLES;&lt;/tt&gt; (MySQL), or&lt;tt&gt;.schema&lt;/tt&gt; (SQLite)来展示Django创建的所有表。&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;strong&gt;创建模块&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;现在你的环境&amp;#8212;-一个项目已经被创建，你下一步将开始工作。&lt;/p&gt;
&lt;p&gt;在Django中程序将包含一个Python模块，在你的Python路径中，从过一个确定的方式。Django创建默认方式产生一个程序的访问方式。这样你将集中注意于写代码而不是创建路径。&lt;/p&gt;
&lt;p&gt;在这个教程中，我们将创建poll程序在mysite中。结果，程序将解耦&amp;#8212;也就是说poll程序中的代码指向mysite.app。接着，我们将讨论解耦。&lt;/p&gt;
&lt;p&gt;为了创建你的程序，确保进入mysite路径并且输入如下指令：&lt;/p&gt;
&lt;pre&gt;python manage.py startapp polls&lt;/pre&gt;
&lt;p&gt;这将会创建poll路径，包含如下文文件：&lt;/p&gt;
&lt;pre&gt;polls/
    __init__.py
    models.py
    tests.py
    views.py&lt;/pre&gt;
&lt;p&gt;这个路径将持有poll程序。&lt;/p&gt;
&lt;p&gt;在数据库的web应用中第一步是定义你的模块&amp;#8212;你的数据库框架包含额外的元信息。&lt;/p&gt;
&lt;p&gt;在我们的poll应用中，我们创建了两个模块：polls和choices。一个poll包含一个问题（question）和发布时间（publication date）。一个选择（choice）包含两个属性：选择文本和投票数。每一个选项(choice)关联一个投票（poll）。&lt;/p&gt;
&lt;p&gt;这些内容通过简单的Python类来展现。如下编辑polls/models.py：&lt;/p&gt;
&lt;pre&gt;from django.db import models

class Poll(models.Model):
    question = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')

class Choice(models.Model):
    poll = models.ForeignKey(Poll)
    choice = models.CharField(max_length=200)
    votes = models.IntegerField()&lt;/pre&gt;
&lt;p&gt;这些代码很直接。每一个模块通过一个django.db.models.Model的子类来展现。每一个模块包含一定数量的类变量，每一个展示数据库域在模块中。&lt;/p&gt;
&lt;p&gt;每一个域通过一个Field类实例来代表&amp;#8212;例如，CharField代表字符串，&lt;a href=&quot;http://docs.djangoproject.com/ref/models/fields/#django.db.models.DateTimeField&quot;&gt;&lt;tt&gt;DateTimeField&lt;/tt&gt;&lt;/a&gt;代表时间。这些告诉Django数据的类型。&lt;/p&gt;
&lt;p&gt;每一个Field的实例是这个属性的名字，使用机器亲近的模式。你急那个使用这些值在你的Python代码中，并且你的数据库将会使用这些作为他的列明。&lt;/p&gt;
&lt;p&gt;你可一个使用可选的第一位置参数给一个Field来满足一个人类可读的名字。这将会用作Django的交互部分，这将会使用文档表示。如果第一个域没有标明，Django将会使用机器可读名字。在例子中，我们只为Poll.pub_date顶一个可读属性。对于所有的属性，必须定义相应的可读属性。&lt;/p&gt;
&lt;p&gt;一些域类包含必须属性.CharField，例如，要求你给出一个max_length。这不仅用于数据库，还用于变量。&lt;/p&gt;
&lt;p&gt;最后，注意到关系被定义，使用ForeignKey。它告诉Django，每一个选择（choice）对应一个投票（poll）。Django支持所有的常见数据库关系：一对多，一对一，多对一。&lt;/p&gt;
&lt;p&gt;激活模块&lt;/p&gt;
&lt;p&gt;这个小的模块赋予Django许多信息。使用它，你可以：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;创建一个数据表&lt;/li&gt;
&lt;li&gt;创建一个连接数据库的API&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;但是，首先你要判断polls是否已经正确安装。&lt;/p&gt;
&lt;p&gt;再次编辑settings.py，改变&lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-INSTALLED_APPS&quot;&gt;&lt;tt&gt;INSTALLED_APPS&lt;/tt&gt;&lt;/a&gt;使其包含‘mysite.polls’。如下：&lt;/p&gt;
&lt;pre&gt;INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'mysite.polls'
)&lt;/pre&gt;
&lt;p&gt;现在Django知道mysite已经能够包含了polls应用。让我们执行另一个命令：&lt;/p&gt;
&lt;pre&gt;python manage.py sql polls&lt;/pre&gt;
&lt;p&gt;你应当扛到下面类似的指令：&lt;/p&gt;
&lt;pre&gt;BEGIN;
CREATE TABLE &quot;polls_poll&quot; (
    &quot;id&quot; serial NOT NULL PRIMARY KEY,
    &quot;question&quot; varchar(200) NOT NULL,
    &quot;pub_date&quot; timestamp with time zone NOT NULL
);
CREATE TABLE &quot;polls_choice&quot; (
    &quot;id&quot; serial NOT NULL PRIMARY KEY,
    &quot;poll_id&quot; integer NOT NULL REFERENCES &quot;polls_poll&quot; (&quot;id&quot;),
    &quot;choice&quot; varchar(200) NOT NULL,
    &quot;votes&quot; integer NOT NULL
);
COMMIT;&lt;/pre&gt;
&lt;p&gt;注意如下：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;实际的输出决定于你的数据库&lt;/li&gt;
&lt;li&gt;表名称结合应用名称（polls）和模块名称小写字母自动产生（&amp;#8212;-polls和choice）&lt;/li&gt;
&lt;li&gt;主键自动添加&lt;/li&gt;
&lt;li&gt;通过转换，Django追加“_id”到每一个外键。你也可以重写它&lt;/li&gt;
&lt;li&gt;外键关系被REFERENCE来解释&lt;/li&gt;
&lt;li&gt;It&amp;#8217;s tailored to the database you&amp;#8217;re using, so database-specific field types such as &lt;tt&gt;auto_increment&lt;/tt&gt; (MySQL), &lt;tt&gt;serial&lt;/tt&gt;(PostgreSQL), or &lt;tt&gt;integer primary key&lt;/tt&gt; (SQLite) are handled for you automatically. Same goes for quoting of field names &amp;#8212; e.g., using double quotes or single quotes. The author of this tutorial runs PostgreSQL, so the example output is in PostgreSQL syntax.&lt;/li&gt;
&lt;li&gt;sql命令不一定在你的数据库中运行&amp;#8211;它只是在屏幕上显示Django需要的，如果你想，可以复制粘贴进入你的数据库命令行。然后，就像我们看到的，Django提供一种更简单的方式&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果你有兴趣，可以执行如下命令：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-validate&quot;&gt;&lt;tt&gt;python manage.py validate&lt;/tt&gt;&lt;/a&gt; &amp;#8212; Checks for any errors in the construction of your models.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sqlcustom&quot;&gt;&lt;tt&gt;python manage.py sqlcustom polls&lt;/tt&gt;&lt;/a&gt; &amp;#8212; Outputs any &lt;a href=&quot;http://docs.djangoproject.com/howto/initial-data/#initial-sql&quot;&gt;&lt;em&gt;custom SQL statements&lt;/em&gt;&lt;/a&gt; (such as table modifications or constraints) that are defined for the application&lt;/li&gt;
&lt;li&gt;&lt;tt&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sqlclear&quot;&gt;python manage.py sqlclear polls&lt;/a&gt;&lt;/tt&gt; &amp;#8212; Outputs the necessary&lt;tt&gt;DROP TABLE&lt;/tt&gt; statements for this app, according to which tables already exist in your database (if any)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sqlindexes&quot;&gt;&lt;tt&gt;python manage.py sqlindexes polls&lt;/tt&gt;&lt;/a&gt; &amp;#8212; Outputs the &lt;tt&gt;CREATE INDEX&lt;/tt&gt;statements for this app.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sqlall&quot;&gt;&lt;tt&gt;python manage.py sqlall polls&lt;/tt&gt;&lt;/a&gt; &amp;#8212; A combination of all the SQL from the &lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sql&quot;&gt;&lt;tt&gt;sql&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sqlcustom&quot;&gt;&lt;tt&gt;sqlcustom&lt;/tt&gt;&lt;/a&gt;, and &lt;a href=&quot;http://docs.djangoproject.com/ref/django-admin/#djadmin-sqlindexes&quot;&gt;&lt;tt&gt;sqlindexes&lt;/tt&gt;&lt;/a&gt; commands. 查看这些命令的输出能够让你更加理解发生了什么。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;现在执行syncdb来创建模块表在你的数据库中。&lt;/p&gt;
&lt;ul&gt;&lt;/ul&gt;
&lt;li&gt;
&lt;pre&gt;python manage.py syncdb&lt;/pre&gt;
&lt;ul&gt;这个syncdb执行sql命令从sqlall在你的数据库中为你的所有INSTALL_APPS中存在的应用。浙江会创建所有的表，初始化数据，为你所有的应用添加索引。&lt;/ul&gt;
&lt;ul&gt;&lt;a href=&quot;http://docs.djangoproject.com/en/dev/ref/django-admin/#ref-django-admin&quot;&gt;阅读更多&lt;/a&gt;&lt;/ul&gt;
&lt;ul&gt;使用API&lt;/ul&gt;
&lt;ul&gt;现在让我们进入交互行然后使用Django给你的免费API。进入命令行后输入：&lt;/ul&gt;
&lt;pre&gt;python manage.py shell&lt;/pre&gt;
&lt;/li&gt;
&lt;ul&gt;我们使用这个而不是简单的输入“python”,因为manage.py设置了整个项目环境为你。“设置项目环境”包含下面两个事情：&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Putting &lt;tt&gt;mysite&lt;/tt&gt; on &lt;tt&gt;sys.path&lt;/tt&gt;. For flexibility, several pieces of Django refer to projects in Python dotted-path notation (e.g.&lt;tt&gt;'mysite.polls.models'&lt;/tt&gt;). In order for this to work, the &lt;tt&gt;mysite&lt;/tt&gt;package has to be on &lt;tt&gt;sys.path&lt;/tt&gt;.We&amp;#8217;ve already seen one example of this: the &lt;a href=&quot;http://docs.djangoproject.com/ref/settings/#setting-INSTALLED_APPS&quot;&gt;&lt;tt&gt;INSTALLED_APPS&lt;/tt&gt;&lt;/a&gt;setting is a list of packages in dotted-path notation.&lt;/li&gt;
&lt;li&gt;Setting the &lt;tt&gt;DJANGO_SETTINGS_MODULE&lt;/tt&gt; environment variable, which gives Django the path to your &lt;tt&gt;settings.py&lt;/tt&gt; file.一旦你进入交互行，探索数据库API吧：&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&amp;gt;&amp;gt;&amp;gt; from mysite.polls.models import Poll, Choice # Import the model classes we just wrote.

# No polls are in the system yet.
&amp;gt;&amp;gt;&amp;gt; Poll.objects.all()
[]

# Create a new Poll.
&amp;gt;&amp;gt;&amp;gt; import datetime
&amp;gt;&amp;gt;&amp;gt; p = Poll(question=&quot;What's up?&quot;, pub_date=datetime.datetime.now())

# Save the object into the database. You have to call save() explicitly.
&amp;gt;&amp;gt;&amp;gt; p.save()

# Now it has an ID. Note that this might say &quot;1L&quot; instead of &quot;1&quot;, depending
# on which database you're using. That's no biggie; it just means your
# database backend prefers to return integers as Python long integer
# objects.
&amp;gt;&amp;gt;&amp;gt; p.id
1

# Access database columns via Python attributes.
&amp;gt;&amp;gt;&amp;gt; p.question
&quot;What's up?&quot;
&amp;gt;&amp;gt;&amp;gt; p.pub_date
datetime.datetime(2007, 7, 15, 12, 00, 53)

# Change values by changing the attributes, then calling save().
&amp;gt;&amp;gt;&amp;gt; p.pub_date = datetime.datetime(2007, 4, 1, 0, 0)
&amp;gt;&amp;gt;&amp;gt; p.save()

# objects.all() displays all the polls in the database.
&amp;gt;&amp;gt;&amp;gt; Poll.objects.all()
[&amp;lt;Poll: Poll object&amp;gt;]&lt;/pre&gt;
&lt;ol&gt;等一分钟。&lt;tt&gt;&amp;lt;Poll: Poll object&amp;gt;&lt;/tt&gt;是无用的对象表现。让我们通过修改polls模块来修股它然后添加一个__unicode__()方法给所有的Poll和Choice：&lt;/ol&gt;
&lt;pre&gt;class Poll(models.Model):
    # ...
    def __unicode__(self):
        return self.question

class Choice(models.Model):
    # ...
    def __unicode__(self):
        return self.choice&lt;/pre&gt;
&lt;p&gt;添加__unicode__()给你的模块是很重要的，不仅是因为你的不仅为自己的清醒时，迅速处理的互动性，而且还因为对象的表示是管理员用于整个Django的自动生成。&lt;/p&gt;
&lt;p&gt;请注意这些都是Python的用法。让我们添加一个自定义模块：&lt;/p&gt;
&lt;pre&gt;import datetime
# ...
class Poll(models.Model):
    # ...
    def was_published_today(self):
        return self.pub_date.date() == datetime.date.today()&lt;/pre&gt;
&lt;p&gt;注意到添加的import datetime引用了Python的标准模块datetime。保存并重新输入命令：&lt;/p&gt;
&lt;pre&gt;&amp;gt;&amp;gt;&amp;gt; from mysite.polls.models import Poll, Choice

# Make sure our __unicode__() addition worked.
&amp;gt;&amp;gt;&amp;gt; Poll.objects.all()
[&amp;lt;Poll: What's up?&amp;gt;]

# Django provides a rich database lookup API that's entirely driven by
# keyword arguments.
&amp;gt;&amp;gt;&amp;gt; Poll.objects.filter(id=1)
[&amp;lt;Poll: What's up?&amp;gt;]
&amp;gt;&amp;gt;&amp;gt; Poll.objects.filter(question__startswith='What')
[&amp;lt;Poll: What's up?&amp;gt;]

# Get the poll whose year is 2007.
&amp;gt;&amp;gt;&amp;gt; Poll.objects.get(pub_date__year=2007)
&amp;lt;Poll: What's up?&amp;gt;

&amp;gt;&amp;gt;&amp;gt; Poll.objects.get(id=2)
Traceback (most recent call last):
    ...
DoesNotExist: Poll matching query does not exist.

# Lookup by a primary key is the most common case, so Django provides a
# shortcut for primary-key exact lookups.
# The following is identical to Poll.objects.get(id=1).
&amp;gt;&amp;gt;&amp;gt; Poll.objects.get(pk=1)
&amp;lt;Poll: What's up?&amp;gt;

# Make sure our custom method worked.
&amp;gt;&amp;gt;&amp;gt; p = Poll.objects.get(pk=1)
&amp;gt;&amp;gt;&amp;gt; p.was_published_today()
False

# Give the Poll a couple of Choices. The create call constructs a new
# choice object, does the INSERT statement, adds the choice to the set
# of available choices and returns the new Choice object. Django creates
# a set to hold the &quot;other side&quot; of a ForeignKey relation
# (e.g. a poll's choices) which can be accessed via the API.
&amp;gt;&amp;gt;&amp;gt; p = Poll.objects.get(pk=1)

# Display any choices from the related object set -- none so far.
&amp;gt;&amp;gt;&amp;gt; p.choice_set.all()
[]

# Create three choices.
&amp;gt;&amp;gt;&amp;gt; p.choice_set.create(choice='Not much', votes=0)
&amp;lt;Choice: Not much&amp;gt;
&amp;gt;&amp;gt;&amp;gt; p.choice_set.create(choice='The sky', votes=0)
&amp;lt;Choice: The sky&amp;gt;
&amp;gt;&amp;gt;&amp;gt; c = p.choice_set.create(choice='Just hacking again', votes=0)

# Choice objects have API access to their related Poll objects.
&amp;gt;&amp;gt;&amp;gt; c.poll
&amp;lt;Poll: What's up?&amp;gt;

# And vice versa: Poll objects get access to Choice objects.
&amp;gt;&amp;gt;&amp;gt; p.choice_set.all()
[&amp;lt;Choice: Not much&amp;gt;, &amp;lt;Choice: The sky&amp;gt;, &amp;lt;Choice: Just hacking again&amp;gt;]
&amp;gt;&amp;gt;&amp;gt; p.choice_set.count()
3

# The API automatically follows relationships as far as you need.
# Use double underscores to separate relationships.
# This works as many levels deep as you want; there's no limit.
# Find all Choices for any poll whose pub_date is in 2007.
&amp;gt;&amp;gt;&amp;gt; Choice.objects.filter(poll__pub_date__year=2007)
[&amp;lt;Choice: Not much&amp;gt;, &amp;lt;Choice: The sky&amp;gt;, &amp;lt;Choice: Just hacking again&amp;gt;]

# Let's delete one of the choices. Use delete() for that.
&amp;gt;&amp;gt;&amp;gt; c = p.choice_set.filter(choice__startswith='Just hacking')
&amp;gt;&amp;gt;&amp;gt; c.delete()&lt;/pre&gt;
&lt;p&gt;For more information on model relations, see &lt;a href=&quot;http://docs.djangoproject.com/ref/models/relations/#ref-models-relations&quot;&gt;&lt;em&gt;Accessing related objects&lt;/em&gt;&lt;/a&gt;. For full details on the database API, see our&lt;a href=&quot;http://docs.djangoproject.com/topics/db/queries/#topics-db-queries&quot;&gt;&lt;em&gt;Database API reference&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When you&amp;#8217;re comfortable with the API, read &lt;a href=&quot;http://docs.djangoproject.com/tutorial02/#intro-tutorial02&quot;&gt;&lt;em&gt;part 2 of this tutorial&lt;/em&gt;&lt;/a&gt; to get Django&amp;#8217;s automatic admin working.&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1649&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1649&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1649&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1649&amp;amp;submitHeadline=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&amp;amp;submitSummary=%E8%AE%A9%E6%88%91%E4%BB%AC%E9%80%9A%E8%BF%87%E4%BE%8B%E5%AD%90%E6%9D%A5%E5%AD%A6%E4%B9%A0%E3%80%82%0D%0A%0D%0A%E9%80%9A%E8%BF%87%E8%BF%99%E4%B8%AA%E6%95%99%E7%A8%8B%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E5%85%A8%E7%A8%8B%E7%BB%8F%E5%8E%86%E5%88%9B%E5%BB%BA%E5%9F%BA%E6%9C%AC%E7%9A%84%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%88%9B%E5%BB%BA%E8%BF%87%E7%A8%8B%E3%80%82%0D%0A%0D%0A%E5%AE%83%E5%B0%86%E5%8C%85%E5%90%AB%E4%B8%A4%E4%B8%AA%E9%83%A8%E5%88%86%EF%BC%9A%0D%0A%0D%0A%09%20%E4%B8%80%E4%B8%AA%E5%85%AC%E5%BC%80%E7%9A%84%E7%AB%99%E7%82%B9%EF%BC%8C%E8%AE%A9%E4%BA%BA%E4%BB%AC%E6%9D%A5%E6%9F%A5%E7%9C%8B%E6%8A%95%E7%A5%A8%E5%B9%B6%E4%B8%94%E5%8F%82%E4%B8%8E%E6%8A%95%E7%A5%A8%0D%0A%09%E4%B8%80%E4%B8%AA%E7%AE%A1%E7%90%86%E5%91%98%E7%AB%99%E7%82%B9%EF%BC%8C%E4%BD%BF%E4%BD%A0%E5%8F%AF%E4%BB%A5%E6%B7%BB%E5%8A%A0%E3%80%81%E5%88%A0%E9%99%A4%E3%80%81%E4%BF%AE%E6%94%B9%E6%8A%95%E7%A5%A8%0D&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1649&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1649&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1649&amp;amp;t=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st+-+http://b2l.me/4dxx6+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F%201st%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E8%AE%A9%E6%88%91%E4%BB%AC%E9%80%9A%E8%BF%87%E4%BE%8B%E5%AD%90%E6%9D%A5%E5%AD%A6%E4%B9%A0%E3%80%82%0D%0A%0D%0A%E9%80%9A%E8%BF%87%E8%BF%99%E4%B8%AA%E6%95%99%E7%A8%8B%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B0%86%E4%BC%9A%E5%85%A8%E7%A8%8B%E7%BB%8F%E5%8E%86%E5%88%9B%E5%BB%BA%E5%9F%BA%E6%9C%AC%E7%9A%84%E6%8A%95%E7%A5%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%88%9B%E5%BB%BA%E8%BF%87%E7%A8%8B%E3%80%82%0D%0A%0D%0A%E5%AE%83%E5%B0%86%E5%8C%85%E5%90%AB%E4%B8%A4%E4%B8%AA%E9%83%A8%E5%88%86%EF%BC%9A%0D%0A%0D%0A%09%20%E4%B8%80%E4%B8%AA%E5%85%AC%E5%BC%80%E7%9A%84%E7%AB%99%E7%82%B9%EF%BC%8C%E8%AE%A9%E4%BA%BA%E4%BB%AC%E6%9D%A5%E6%9F%A5%E7%9C%8B%E6%8A%95%E7%A5%A8%E5%B9%B6%E4%B8%94%E5%8F%82%E4%B8%8E%E6%8A%95%E7%A5%A8%0D%0A%09%E4%B8%80%E4%B8%AA%E7%AE%A1%E7%90%86%E5%91%98%E7%AB%99%E7%82%B9%EF%BC%8C%E4%BD%BF%E4%BD%A0%E5%8F%AF%E4%BB%A5%E6%B7%BB%E5%8A%A0%E3%80%81%E5%88%A0%E9%99%A4%E3%80%81%E4%BF%AE%E6%94%B9%E6%8A%95%E7%A5%A8%0D%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1649&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1649/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&amp;amp;link=http://www.shui.us/archives/1649&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1649&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1649&amp;amp;title=%E5%86%99%E4%BD%A0%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AADjango%E7%A8%8B%E5%BA%8F+1st&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1649&quot;&gt;写你的第一个Django程序 1st&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1649#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/django&quot; rel=&quot;tag&quot;&gt;django&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874794/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1649&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874794/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874794/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5eb9f3e8f88d3e33335c5d833dd38248&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5eb9f3e8f88d3e33335c5d833dd38248&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a58896b77747ee100dec356d0c64c37e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a58896b77747ee100dec356d0c64c37e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=27b957f68127cef488ab44069fa26597&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=27b957f68127cef488ab44069fa26597&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5fb8e28c5cbaf7bc621457501b43f316&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5fb8e28c5cbaf7bc621457501b43f316&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7f804b9d622defbb5f01c9f35b0b0c44&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7f804b9d622defbb5f01c9f35b0b0c44&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=1cc1a56c67069ed6e8c891ff7198a265&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=1cc1a56c67069ed6e8c891ff7198a265&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=890c86d1f3f88f8be47e296fc9873c0e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=890c86d1f3f88f8be47e296fc9873c0e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1649/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;让我们通过例子来学习。&lt;/p&gt;&lt;p&gt;通过这个教程，我们将会全程经历创建基本的投票程序的创建过程。&lt;/p&gt;&lt;p&gt;它将包含两个部分：&lt;/p&gt;&lt;p&gt; 一个公开的站点，让人们来查看投票并且参与投票&lt;/p&gt;&lt;p&gt;一个管理员站点，使你可以添加、删除、修改投票&lt;/p&gt;&lt;p&gt;我们假设你已经安装好了Django。你可以通过Python的命令行来判断是否将Django安装完成，输入import Django。如果命令行成功运行，Django即为正确安装。&lt;/p&gt;&lt;p&gt;创建一个项目&lt;/p&gt;&lt;p&gt;这是你第一次使用Django，你必须注意一些初始化操作。也就是说，你必须自动创建一些代码来建立一个Django项目--一个Django项目的一系列设置，包括数据库设置、Django特殊设置和应用程序设置。&lt;/p&gt;&lt;p&gt;在命令行，cd进入一个目录，在这里你可以存储你的代码，然后运行指令django-admin.py startproject mysite。这将会创建一个mysite目录在当前目录下。&lt;/p&gt;&lt;p&gt;如果你是通过python setup.py安装Django，那么django-admin.py应当在你的系统路径中。如果没有存在，你可以在site-packges/django/bin中发现它，这就是你的site-packages在Python中的目录。考虑到对性django-admin.py的链接从你的路径的某些地方，例如/usr/local/bin。&lt;/p&gt;&lt;p&gt; &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1649'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874794/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1649&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874794/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874794/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5eb9f3e8f88d3e33335c5d833dd38248&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5eb9f3e8f88d3e33335c5d833dd38248&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a58896b77747ee100dec356d0c64c37e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a58896b77747ee100dec356d0c64c37e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=27b957f68127cef488ab44069fa26597&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=27b957f68127cef488ab44069fa26597&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5fb8e28c5cbaf7bc621457501b43f316&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5fb8e28c5cbaf7bc621457501b43f316&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7f804b9d622defbb5f01c9f35b0b0c44&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7f804b9d622defbb5f01c9f35b0b0c44&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=1cc1a56c67069ed6e8c891ff7198a265&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=1cc1a56c67069ed6e8c891ff7198a265&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=890c86d1f3f88f8be47e296fc9873c0e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=890c86d1f3f88f8be47e296fc9873c0e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>django</category><category>Think</category><pubDate>Thu, 17 Jun 2010 21:54:25 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1649#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1649</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1649</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874794/5895338</fs:itemid></item><item><title>1st.Django at a glance</title><link>http://www.shui.us/archives/1641</link><content:encoded>&lt;p class='fp'&gt;由于Django是快速的开发环境，它被设计于使web开发任务更加快速、简单。这里是对如何使用Django开发数据驱动程序的一些介绍。&lt;/p&gt;
&lt;p&gt;本文的目的是给你足够的技术来理解Django如何工作，虽然不是要写成一个指南或是教程&amp;#8211;但是实际上已经具备了二者的功能。当你准备一个工程之时，你可以开始阅读这个教程或是其他的相关文章。&lt;/p&gt;
&lt;p&gt;设计你的模块&lt;/p&gt;
&lt;p&gt;尽管你可以不使用数据库来构建你的Django，他是一个对象关系型的mapper，你使用Python来描绘数据库构架。&lt;/p&gt;
&lt;p&gt;数据模块驱动提供多种模块的展现方式&amp;#8211;迄今为止，他已经解决了两年的数据库表问题。这是一个例子：&lt;/p&gt;
&lt;pre&gt;class Reporter(models.Model):
    full_name = models.CharField(max_length=70)

    def __unicode__(self):
        return self.full_name

class Article(models.Model):
    pub_date = models.DateTimeField()
    headline = models.CharField(max_length=200)
    content = models.TextField()
    reporter = models.ForeignKey(Reporter)

    def __unicode__(self):
        return self.headline&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-1641&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;安装&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;接下来，使用Django的命令行模式来自动创建数据库表：&lt;/p&gt;
&lt;pre&gt;manage.py syncdb&lt;/pre&gt;
&lt;p&gt;syncdb命令将会查看所有的可用模块，并且在你的数据库中创建没有的表。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;享受免费的API&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;利用这个，你可以得到一个免费的、丰富的Python API来操作你的数据。这些api创建于高层的、五代码的层需求之上：&lt;/p&gt;
&lt;pre&gt;&amp;gt;&amp;gt;&amp;gt; from mysite.models import Reporter, Article

# No reporters are in the system yet.
&amp;gt;&amp;gt;&amp;gt; Reporter.objects.all()
[]

# Create a new Reporter.
&amp;gt;&amp;gt;&amp;gt; r = Reporter(full_name='John Smith')

# Save the object into the database. You have to call save() explicitly.
&amp;gt;&amp;gt;&amp;gt; r.save()

# Now it has an ID.
&amp;gt;&amp;gt;&amp;gt; r.id
1

# Now the new reporter is in the database.
&amp;gt;&amp;gt;&amp;gt; Reporter.objects.all()
[&amp;lt;Reporter: John Smith&amp;gt;]

# Fields are represented as attributes on the Python object.
&amp;gt;&amp;gt;&amp;gt; r.full_name
'John Smith'

# Django provides a rich database lookup API.
&amp;gt;&amp;gt;&amp;gt; Reporter.objects.get(id=1)
&amp;lt;Reporter: John Smith&amp;gt;
&amp;gt;&amp;gt;&amp;gt; Reporter.objects.get(full_name__startswith='John')
&amp;lt;Reporter: John Smith&amp;gt;
&amp;gt;&amp;gt;&amp;gt; Reporter.objects.get(full_name__contains='mith')
&amp;lt;Reporter: John Smith&amp;gt;
&amp;gt;&amp;gt;&amp;gt; Reporter.objects.get(id=2)
Traceback (most recent call last):
    ...
DoesNotExist: Reporter matching query does not exist.

# Create an article.
&amp;gt;&amp;gt;&amp;gt; from datetime import datetime
&amp;gt;&amp;gt;&amp;gt; a = Article(pub_date=datetime.now(), headline='Django is cool',
...     content='Yeah.', reporter=r)
&amp;gt;&amp;gt;&amp;gt; a.save()

# Now the article is in the database.
&amp;gt;&amp;gt;&amp;gt; Article.objects.all()
[&amp;lt;Article: Django is cool&amp;gt;]

# Article objects get API access to related Reporter objects.
&amp;gt;&amp;gt;&amp;gt; r = a.reporter
&amp;gt;&amp;gt;&amp;gt; r.full_name
'John Smith'

# And vice versa: Reporter objects get API access to Article objects.
&amp;gt;&amp;gt;&amp;gt; r.article_set.all()
[&amp;lt;Article: Django is cool&amp;gt;]

# The API follows relationships as far as you need, performing efficient
# JOINs for you behind the scenes.
# This finds all articles by a reporter whose name starts with &amp;quot;John&amp;quot;.
&amp;gt;&amp;gt;&amp;gt; Article.objects.filter(reporter__full_name__startswith=&amp;quot;John&amp;quot;)
[&amp;lt;Article: Django is cool&amp;gt;]

# Change an object by altering its attributes and calling save().
&amp;gt;&amp;gt;&amp;gt; r.full_name = 'Billy Goat'
&amp;gt;&amp;gt;&amp;gt; r.save()

# Delete an object with delete().
&amp;gt;&amp;gt;&amp;gt; r.delete()&lt;/pre&gt;
&lt;p&gt;&lt;font size=&quot;4&quot;&gt;&lt;strong&gt;动态管理接口：不仅是脚手架&amp;#8212;他是一整座房屋&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;一旦你的模块已经被定义，Django可以自动创建专业的、高效率的管理接口&amp;#8212;-一个网站，可以田间、修稿、删除认证用户。在管理站很容易来注册你的模块：&lt;/p&gt;
&lt;pre&gt;# In models.py...

from django.db import models

class Article(models.Model):
    pub_date = models.DateTimeField()
    headline = models.CharField(max_length=200)
    content = models.TextField()
    reporter = models.ForeignKey(Reporter)

# In admin.py in the same directory...

import models
from django.contrib import admin

admin.site.register(models.Article)&lt;/pre&gt;
&lt;p&gt;这逻辑在于你的站点时被员工或是客户来编辑，或是你自己&amp;#8212;-你不想来亲自创建底层的接口来管理内容。&lt;/p&gt;
&lt;p&gt;在Django应用程序中的一个典型的工作流式创建模块，在管理站点注册并且迅速执行，这样你的员工（或是客户）能够发布数据。接着，将数据发布给用户。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;设计你的URLs&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;一个清晰、高雅的URL表对于高质量的web应用来说是至关重要的。Django促进了高雅的URL设计，并且不会吧无用的东西放入到URL中，例如.php或是.asp。&lt;/p&gt;
&lt;p&gt;为了给程序设计urls.你可以给使用一个Python模块，称之为：URLconf。一个你的程序的内容表，包含简单的映射介于URL和Python回调函数之间。URLconf同样解耦从Python代码。&lt;/p&gt;
&lt;p&gt;下面是一个URLconf看起来的样子对于Report/Article：&lt;/p&gt;
&lt;pre&gt;from django.conf.urls.defaults import *

urlpatterns = patterns('',
    (r'^articles/(\d{4})/$', 'mysite.views.year_archive'),
    (r'^articles/(\d{4})/(\d{2})/$', 'mysite.views.month_archive'),
    (r'^articles/(\d{4})/(\d{2})/(\d+)/$', 'mysite.views.article_detail'),
)&lt;/pre&gt;
&lt;p&gt;这个地图URL，像简单的正则表达式，指向Python回调函数（“views”）。正则表达式，获取URL的值。当一个用户请求一个页面时，Django通过执行每一个模式顺序执行，然后再第一个符合的地方停止（如果没有符合的就会出现特殊的404页面）。这个执行很快，因为正则表达式在页面加载时执行。&lt;/p&gt;
&lt;p&gt;一旦一个正则符合，Django导入并且调用这个页面，这是一个简单的Python函数。每一个页面获得一个请求对象&amp;#8212;它包含请求元数据&amp;#8212;数据被正则获取。&lt;/p&gt;
&lt;p&gt;举例子，如果一个用户获取URL“/article/2005/05/39323”,Django就爱你干活调用函数mysite.views.article_detail(request,’2005’,’05’,’39323’)。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;写你的页面&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;每一个页面负责连个事情：返回一个httpresponse对象，其中包含请求页的内容，或是刮起一个错误例如HTTP·404。其他的在于你。&lt;/p&gt;
&lt;p&gt;一般来说，一个视图通过参数返回数据，载入模板并且将模板和数据结合。这是一个页面的代码：&lt;/p&gt;
&lt;pre&gt;def year_archive(request, year):
    a_list = Article.objects.filter(pub_date__year=year)
    return render_to_response('news/year_archive.html', {'year': year, 'article_list': a_list})&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;设计你的模板&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;上面的代码载入news/year_archive.html模板。&lt;/p&gt;
&lt;p&gt;Django有一个模板搜索路径，它允许你将模板的冗余最小化。在你的Django设置中，你可以定义一个路径列表来检查模板。如果一个模板在第一个路径中不存在，它将会检查第二个，依次进行。&lt;/p&gt;
&lt;p&gt;让我们看看news/article_detail.html模板被发现的过程：&lt;/p&gt;
&lt;pre&gt;{% extends &amp;quot;base.html&amp;quot; %}

{% block title %}Articles for {{ year }}{% endblock %}

{% block content %}
&amp;lt;h1&amp;gt;Articles for {{ year }}&amp;lt;/h1&amp;gt;

{% for article in article_list %}
    &amp;lt;p&amp;gt;{{ article.headline }}&amp;lt;/p&amp;gt;
    &amp;lt;p&amp;gt;By {{ article.reporter.full_name }}&amp;lt;/p&amp;gt;
    &amp;lt;p&amp;gt;Published {{ article.pub_date|date:&amp;quot;F j, Y&amp;quot; }}&amp;lt;/p&amp;gt;
{% endfor %}
{% endblock %}&lt;/pre&gt;
&lt;p&gt;变量被双引号号包围。{{ article.headline }}意味着“输出文章的标题属性”。但是点不只是用来表示属性“他同样可以用作字典查找、索引查找和函数调用。&lt;/p&gt;
&lt;p&gt;注意到{{ article.pub_date|date:&amp;quot;F j, Y&amp;quot; }}使用Unix-style”pipe“(这个”|“)。这被叫做一个模板文件夹，并且它过滤输出变量属性值。这种情况下，时间被Python的时间模板过滤（奖项是PHP 的时就爱你函数）。&lt;/p&gt;
&lt;p&gt;你可以连接很多过滤。你可以写出自己的过滤。你可以写自己的模板标签，将会在后台执行Python代码。&lt;/p&gt;
&lt;p&gt;最后，Django使用模板继承：这就是&lt;tt&gt;{% extends &amp;quot;base.html&amp;quot; %}&lt;/tt&gt;所实现的。它表示”首先载入”base“模板，它定义了一个块，并且使用下面的块填充。简单来说，它使你动态减少了模板中的冗余：每一个模板只需要定义它唯一的东西。&lt;/p&gt;
&lt;p&gt;下面是一个“base.html”模板内容：&lt;/p&gt;
&lt;pre&gt;&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;title&amp;gt;{% block title %}{% endblock %}&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;img src=&amp;quot;sitelogo.gif&amp;quot; alt=&amp;quot;Logo&amp;quot; /&amp;gt;
    {% block content %}{% endblock %}
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/pre&gt;
&lt;p&gt;最简单的，它定义了外表和感受为你的站点（使用站点的logo），并且提供”洞“给你的子模板来填充。这将会是站点更改更加简单因为你将只需要改变一个文件—base.html。&lt;/p&gt;
&lt;p&gt;注意到你不必非要使用Django的模板如果你偏好另外的话。虽然Django得模板系统更好的和Django的模块结合，没有人和东西强迫你使用它。因此，你不必同样必须使用Django的数据库API。你可以使用其他系统的数据库抽象层，你可以读取XML文件，你可以读取硬盘或是其他的你所需要的。Django的其他块&amp;#8212;模块、视图、模板&amp;#8212;将会接下来解耦。&lt;/p&gt;
&lt;p&gt;&lt;font size=&quot;4&quot;&gt;&lt;strong&gt;这只是表面&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;我们已经系统的看过了Django的功能。更多的阅读：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;a href=&quot;http://docs.djangoproject.com/topics/cache/#topics-cache&quot;&gt;&lt;em&gt;caching framework&lt;/em&gt;&lt;/a&gt; that integrates with memcached or other backends. &lt;/li&gt;
&lt;li&gt;A &lt;a href=&quot;http://docs.djangoproject.com/ref/contrib/syndication/#ref-contrib-syndication&quot;&gt;&lt;em&gt;syndication framework&lt;/em&gt;&lt;/a&gt; that makes creating RSS and Atom feeds as easy as writing a small Python class. &lt;/li&gt;
&lt;li&gt;More sexy automatically-generated admin features &amp;#8212; this overview barely scratched the surface. &lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1641&amp;amp;title=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1641&amp;amp;title=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1641&amp;amp;title=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1641&amp;amp;submitHeadline=1st.Django+at+a+glance&amp;amp;submitSummary=%E7%94%B1%E4%BA%8EDjango%E6%98%AF%E5%BF%AB%E9%80%9F%E7%9A%84%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%EF%BC%8C%E5%AE%83%E8%A2%AB%E8%AE%BE%E8%AE%A1%E4%BA%8E%E4%BD%BFweb%E5%BC%80%E5%8F%91%E4%BB%BB%E5%8A%A1%E6%9B%B4%E5%8A%A0%E5%BF%AB%E9%80%9F%E3%80%81%E7%AE%80%E5%8D%95%E3%80%82%E8%BF%99%E9%87%8C%E6%98%AF%E5%AF%B9%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8Django%E5%BC%80%E5%8F%91%E6%95%B0%E6%8D%AE%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E4%B8%80%E4%BA%9B%E4%BB%8B%E7%BB%8D%E3%80%82%20%20%E6%9C%AC%E6%96%87%E7%9A%84%E7%9B%AE%E7%9A%84%E6%98%AF%E7%BB%99%E4%BD%A0%E8%B6%B3%E5%A4%9F%E7%9A%84%E6%8A%80%E6%9C%AF%E6%9D%A5%E7%90%86%E8%A7%A3Django%E5%A6%82%E4%BD%95%E5%B7%A5%E4%BD%9C%EF%BC%8C%E8%99%BD%E7%84%B6%E4%B8%8D%E6%98%AF%E8%A6%81%E5%86%99%E6%88%90%E4%B8%80%E4%B8%AA%E6%8C%87%E5%8D%97%E6%88%96%E6%98%AF%E6%95%99%E7%A8%8B--%E4%BD%86%E6%98%AF%E5%AE%9E%E9%99%85%E4%B8&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1641&amp;amp;title=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1641&amp;amp;t=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1641&amp;amp;t=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=1st.Django+at+a+glance+-+File: /data/app/webapp/functions.php&lt;br /&gt;Line: 7&lt;br /&gt;Message: Too many connections+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%221st.Django%20at%20a%20glance%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E7%94%B1%E4%BA%8EDjango%E6%98%AF%E5%BF%AB%E9%80%9F%E7%9A%84%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%EF%BC%8C%E5%AE%83%E8%A2%AB%E8%AE%BE%E8%AE%A1%E4%BA%8E%E4%BD%BFweb%E5%BC%80%E5%8F%91%E4%BB%BB%E5%8A%A1%E6%9B%B4%E5%8A%A0%E5%BF%AB%E9%80%9F%E3%80%81%E7%AE%80%E5%8D%95%E3%80%82%E8%BF%99%E9%87%8C%E6%98%AF%E5%AF%B9%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8Django%E5%BC%80%E5%8F%91%E6%95%B0%E6%8D%AE%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E4%B8%80%E4%BA%9B%E4%BB%8B%E7%BB%8D%E3%80%82%20%20%E6%9C%AC%E6%96%87%E7%9A%84%E7%9B%AE%E7%9A%84%E6%98%AF%E7%BB%99%E4%BD%A0%E8%B6%B3%E5%A4%9F%E7%9A%84%E6%8A%80%E6%9C%AF%E6%9D%A5%E7%90%86%E8%A7%A3Django%E5%A6%82%E4%BD%95%E5%B7%A5%E4%BD%9C%EF%BC%8C%E8%99%BD%E7%84%B6%E4%B8%8D%E6%98%AF%E8%A6%81%E5%86%99%E6%88%90%E4%B8%80%E4%B8%AA%E6%8C%87%E5%8D%97%E6%88%96%E6%98%AF%E6%95%99%E7%A8%8B--%E4%BD%86%E6%98%AF%E5%AE%9E%E9%99%85%E4%B8%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1641&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1641/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=1st.Django+at+a+glance&amp;amp;link=http://www.shui.us/archives/1641&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1641&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1641&amp;amp;title=1st.Django+at+a+glance&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1641&quot;&gt;1st.Django at a glance&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1641#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/django&quot; rel=&quot;tag&quot;&gt;django&lt;/a&gt;, &lt;a href=&quot;http://www.shui.us/archives/tag/glance&quot; rel=&quot;tag&quot;&gt;glance&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874799/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1641&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874799/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874799/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5e2f746d66000fa64e4773a32ea99c2a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5e2f746d66000fa64e4773a32ea99c2a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=9fe7bcf6c2fd82ebc973b38c84c70778&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=9fe7bcf6c2fd82ebc973b38c84c70778&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c7303afffa7d66774df8e303c69e61b7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c7303afffa7d66774df8e303c69e61b7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c52d1bbc79dc90f678d999761483c22f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c52d1bbc79dc90f678d999761483c22f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=2debe21c8424fe150aeb6f905d4be5a5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=2debe21c8424fe150aeb6f905d4be5a5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a9a369a3136209678b8b9d88d84c55f5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a9a369a3136209678b8b9d88d84c55f5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=fea15582597043d42ffe0dc2a3eb7669&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=fea15582597043d42ffe0dc2a3eb7669&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1641/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;由于Django是快速的开发环境，它被设计于使web开发任务更加快速、简单。这里是对如何使用Django开发数据驱动程序的一些介绍。&lt;/p&gt;&lt;p&gt;本文的目的是给你足够的技术来理解Django如何工作，虽然不是要写成一个指南或是教程--但是实际上已经具备了二者的功能。当你准备一个工程之时，你可以开始阅读这个教程或是其他的相关文章。&lt;/p&gt;&lt;p&gt;设计你的模块&lt;/p&gt;&lt;p&gt;尽管你可以不使用数据库来构建你的Django，他是一个对象关系型的mapper，你使用Python来描绘数据库构架。&lt;/p&gt;&lt;p&gt;数据模块驱动提供多种模块的展现方式--迄今为止，他已经解决了两年的数据库表问题。这是一个例子：&lt;/p&gt;&lt;p&gt;class Reporter(models.Model):&lt;/p&gt;&lt;p&gt;full_name = models.CharField(max_length=70)&lt;/p&gt;&lt;p&gt;def __unicode__(self):&lt;/p&gt;&lt;p&gt;return self.full_name&lt;/p&gt;&lt;p&gt;class Article(models.Model):&lt;/p&gt;&lt;p&gt;pub_date = models.DateTimeField()&lt;/p&gt;&lt;p&gt;headline = models.CharField(max_length=200)&lt;/p&gt;&lt;p&gt;content = models.TextField()&lt;/p&gt;&lt;p&gt;reporter = models.ForeignKey(Reporter)&lt;/p&gt;&lt;p&gt;def __unicode__(self):&lt;/p&gt;&lt;p&gt;return self.headline&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font size=&quot;4&quot;&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
 &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1641'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874799/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1641&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874799/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874799/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5e2f746d66000fa64e4773a32ea99c2a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5e2f746d66000fa64e4773a32ea99c2a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=9fe7bcf6c2fd82ebc973b38c84c70778&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=9fe7bcf6c2fd82ebc973b38c84c70778&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c7303afffa7d66774df8e303c69e61b7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c7303afffa7d66774df8e303c69e61b7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c52d1bbc79dc90f678d999761483c22f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c52d1bbc79dc90f678d999761483c22f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=2debe21c8424fe150aeb6f905d4be5a5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=2debe21c8424fe150aeb6f905d4be5a5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a9a369a3136209678b8b9d88d84c55f5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a9a369a3136209678b8b9d88d84c55f5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=fea15582597043d42ffe0dc2a3eb7669&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=fea15582597043d42ffe0dc2a3eb7669&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>django</category><category>glance</category><category>Think</category><pubDate>Wed, 16 Jun 2010 23:33:44 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1641#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1641</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1641</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874799/5895338</fs:itemid></item><item><title>Django for me</title><link>http://www.shui.us/archives/1640</link><content:encoded>&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/images1.jpg&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px&quot; title=&quot;images (1)&quot; border=&quot;0&quot; alt=&quot;images (1)&quot; align=&quot;left&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/images1_thumb.jpg&quot; width=&quot;154&quot; height=&quot;72&quot; /&gt;&lt;/a&gt; 这一次的英语6级很有很有危险，所以找个方式为下一次六级做准备，想了半天，准备翻译Django的官方文档，借机提高自己的英文能力和学习Django。&lt;/p&gt;
&lt;p&gt;呵呵，以前不知道这个构架，因为有段时间迷Python所以会经常看到这个web构建的介绍。很想学习，但是，总是给自己找各种接口没有看，现在是“机会来了”。&lt;/p&gt;
&lt;p&gt;其实，学习Django，你要有基本的Python基础，但是，对我来说，依旧是一项新的挑战。&lt;/p&gt;
&lt;p&gt;不管怎样，以后都会是一个“走动”的时代，任何东西不再局限于他的圈子，世界变小了，圈子变大了，也许Google让我们知道我们想知道的事，Facebook让我们认识我们想认识的人，但是，没有web构架，一些不会存在~所以，学一门构建技术很重要~既然有人使用Python给我们创造了这么好一个构建，那就学习吧，当然，随着学习的深入，一定会看到很多不足，所以，高手是会自己写构架的，但现在我还是菜鸟，很多东西还很深奥，我依旧是雾里看花~&lt;/p&gt;
&lt;p&gt;学习是一个人得以进步的方式，理想是一个人前行的动力，所以，不要满足于现在，学习更多的东西~&lt;/p&gt;
&lt;p&gt;Django算是我的web学习入门学习~好好学&lt;/p&gt;


&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1640&amp;amp;title=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1640&amp;amp;title=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1640&amp;amp;title=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1640&amp;amp;submitHeadline=Django+for+me&amp;amp;submitSummary=%20%E8%BF%99%E4%B8%80%E6%AC%A1%E7%9A%84%E8%8B%B1%E8%AF%AD6%E7%BA%A7%E5%BE%88%E6%9C%89%E5%BE%88%E6%9C%89%E5%8D%B1%E9%99%A9%EF%BC%8C%E6%89%80%E4%BB%A5%E6%89%BE%E4%B8%AA%E6%96%B9%E5%BC%8F%E4%B8%BA%E4%B8%8B%E4%B8%80%E6%AC%A1%E5%85%AD%E7%BA%A7%E5%81%9A%E5%87%86%E5%A4%87%EF%BC%8C%E6%83%B3%E4%BA%86%E5%8D%8A%E5%A4%A9%EF%BC%8C%E5%87%86%E5%A4%87%E7%BF%BB%E8%AF%91Django%E7%9A%84%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%EF%BC%8C%E5%80%9F%E6%9C%BA%E6%8F%90%E9%AB%98%E8%87%AA%E5%B7%B1%E7%9A%84%E8%8B%B1%E6%96%87%E8%83%BD%E5%8A%9B%E5%92%8C%E5%AD%A6%E4%B9%A0Django%E3%80%82%20%20%E5%91%B5%E5%91%B5%EF%BC%8C%E4%BB%A5%E5%89%8D%E4%B8%8D%E7%9F%A5%E9%81%93%E8%BF%99%E4%B8%AA%E6%9E%84%E6%9E%B6%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%9C%89%E6%AE%B5%E6%97%B6%E9%97%B4%E8%BF%B7Python%E6%89%80%E4%BB%A5%E4%BC%9A%E7%BB%8F%E5%B8%B8%E7%9C%8B%E5%88%B0%E8%BF%99%E4%B8%AAweb%E6%9E%84%E5%BB%BA%E7%9A&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1640&amp;amp;title=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1640&amp;amp;t=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1640&amp;amp;t=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=Django+for+me+-+http://b2l.me/36kxd+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22Django%20for%20me%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%20%E8%BF%99%E4%B8%80%E6%AC%A1%E7%9A%84%E8%8B%B1%E8%AF%AD6%E7%BA%A7%E5%BE%88%E6%9C%89%E5%BE%88%E6%9C%89%E5%8D%B1%E9%99%A9%EF%BC%8C%E6%89%80%E4%BB%A5%E6%89%BE%E4%B8%AA%E6%96%B9%E5%BC%8F%E4%B8%BA%E4%B8%8B%E4%B8%80%E6%AC%A1%E5%85%AD%E7%BA%A7%E5%81%9A%E5%87%86%E5%A4%87%EF%BC%8C%E6%83%B3%E4%BA%86%E5%8D%8A%E5%A4%A9%EF%BC%8C%E5%87%86%E5%A4%87%E7%BF%BB%E8%AF%91Django%E7%9A%84%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%EF%BC%8C%E5%80%9F%E6%9C%BA%E6%8F%90%E9%AB%98%E8%87%AA%E5%B7%B1%E7%9A%84%E8%8B%B1%E6%96%87%E8%83%BD%E5%8A%9B%E5%92%8C%E5%AD%A6%E4%B9%A0Django%E3%80%82%20%20%E5%91%B5%E5%91%B5%EF%BC%8C%E4%BB%A5%E5%89%8D%E4%B8%8D%E7%9F%A5%E9%81%93%E8%BF%99%E4%B8%AA%E6%9E%84%E6%9E%B6%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%9C%89%E6%AE%B5%E6%97%B6%E9%97%B4%E8%BF%B7Python%E6%89%80%E4%BB%A5%E4%BC%9A%E7%BB%8F%E5%B8%B8%E7%9C%8B%E5%88%B0%E8%BF%99%E4%B8%AAweb%E6%9E%84%E5%BB%BA%E7%9A%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1640&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1640/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=Django+for+me&amp;amp;link=http://www.shui.us/archives/1640&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1640&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1640&amp;amp;title=Django+for+me&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1640&quot;&gt;Django for me&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1640#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/diango&quot; rel=&quot;tag&quot;&gt;diango&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874802/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1640&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874802/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874802/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=43fb6def9a522628b3492adf7bb8a532&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=43fb6def9a522628b3492adf7bb8a532&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7dbb48ac023b204c3040db9bd3cd5f4c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7dbb48ac023b204c3040db9bd3cd5f4c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=d65e644255b5e47a783106eac13eb253&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=d65e644255b5e47a783106eac13eb253&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=9631fb3d3b343616567cf0e8207ecde0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=9631fb3d3b343616567cf0e8207ecde0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=e4549c8463a22649190126ede09e3752&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=e4549c8463a22649190126ede09e3752&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=0a80d0aa792303d50c68f95262ae4225&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=0a80d0aa792303d50c68f95262ae4225&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c0284780e7a2a51a0885546367351f94&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c0284780e7a2a51a0885546367351f94&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1640/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;&lt;a href=&quot;http://www.shui.us/wp-content/uploads/2010/06/images1.jpg&quot;&gt;&lt;/a&gt; 这一次的英语6级很有很有危险，所以找个方式为下一次六级做准备，想了半天，准备翻译Django的官方文档，借机提高自己的英文能力和学习Django。&lt;/p&gt;&lt;p&gt;呵呵，以前不知道这个构架，因为有段时间迷Python所以会经常看到这个web构建的介绍。很想学习，但是，总是给自己找各种接口没有看，现在是“机会来 &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1640'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874802/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1640&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874802/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874802/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=43fb6def9a522628b3492adf7bb8a532&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=43fb6def9a522628b3492adf7bb8a532&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7dbb48ac023b204c3040db9bd3cd5f4c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7dbb48ac023b204c3040db9bd3cd5f4c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=d65e644255b5e47a783106eac13eb253&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=d65e644255b5e47a783106eac13eb253&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=9631fb3d3b343616567cf0e8207ecde0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=9631fb3d3b343616567cf0e8207ecde0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=e4549c8463a22649190126ede09e3752&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=e4549c8463a22649190126ede09e3752&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=0a80d0aa792303d50c68f95262ae4225&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=0a80d0aa792303d50c68f95262ae4225&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=c0284780e7a2a51a0885546367351f94&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=c0284780e7a2a51a0885546367351f94&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>diango</category><category>Think</category><pubDate>Wed, 16 Jun 2010 23:32:44 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1640#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1640</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1640</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874802/5895338</fs:itemid></item><item><title>第六感</title><link>http://www.shui.us/archives/1637</link><content:encoded>&lt;p class='fp'&gt;智慧会创造什么？财富？生产力？&lt;/p&gt;
&lt;p&gt;NO，心灵的撼动~&lt;/p&gt;
&lt;p&gt;&lt;object width=&quot;400&quot; height=&quot;300&quot;&gt;&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;&lt;param name=&quot;movie&quot; value=&quot;http://vimeo.com/moogaloop.swf?clip_id=8660342&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&quot; /&gt;&lt;embed src=&quot;http://vimeo.com/moogaloop.swf?clip_id=8660342&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; width=&quot;400&quot; height=&quot;300&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1637&amp;amp;title=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1637&amp;amp;title=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1637&amp;amp;title=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1637&amp;amp;submitHeadline=%E7%AC%AC%E5%85%AD%E6%84%9F&amp;amp;submitSummary=%E6%99%BA%E6%85%A7%E4%BC%9A%E5%88%9B%E9%80%A0%E4%BB%80%E4%B9%88%EF%BC%9F%E8%B4%A2%E5%AF%8C%EF%BC%9F%E7%94%9F%E4%BA%A7%E5%8A%9B%EF%BC%9F%20%20NO%EF%BC%8C%E5%BF%83%E7%81%B5%E7%9A%84%E6%92%BC%E5%8A%A8%7E%20%20&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1637&amp;amp;title=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1637&amp;amp;t=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1637&amp;amp;t=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E7%AC%AC%E5%85%AD%E6%84%9F+-+http://b2l.me/3upfs+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E7%AC%AC%E5%85%AD%E6%84%9F%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E6%99%BA%E6%85%A7%E4%BC%9A%E5%88%9B%E9%80%A0%E4%BB%80%E4%B9%88%EF%BC%9F%E8%B4%A2%E5%AF%8C%EF%BC%9F%E7%94%9F%E4%BA%A7%E5%8A%9B%EF%BC%9F%20%20NO%EF%BC%8C%E5%BF%83%E7%81%B5%E7%9A%84%E6%92%BC%E5%8A%A8%7E%20%20%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1637&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1637/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E7%AC%AC%E5%85%AD%E6%84%9F&amp;amp;link=http://www.shui.us/archives/1637&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1637&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1637&amp;amp;title=%E7%AC%AC%E5%85%AD%E6%84%9F&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1637&quot;&gt;第六感&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1637#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/sixthsense&quot; rel=&quot;tag&quot;&gt;sixthsense&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874817/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1637&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874817/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874817/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6241306c2a92e8ee9689a4ce6ea960c0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6241306c2a92e8ee9689a4ce6ea960c0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=60923b359332c8dd8900b1d21984996f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=60923b359332c8dd8900b1d21984996f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7ab20879d0168a0eb9dd8580c5fa736f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7ab20879d0168a0eb9dd8580c5fa736f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=0d3c892e9df7990bea6e0c3b4762764d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=0d3c892e9df7990bea6e0c3b4762764d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=dc9c72e47f0862ebb26df2dd238041f9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=dc9c72e47f0862ebb26df2dd238041f9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6c66237e441b2d53e9748a00b9b672a8&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6c66237e441b2d53e9748a00b9b672a8&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=8eb70a483368828fcd22ed001d89d386&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=8eb70a483368828fcd22ed001d89d386&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1637/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;智慧会创造什么？财富？生产力？&lt;/p&gt;&lt;p&gt;NO，心灵的撼动~&lt;/p&gt; &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1637'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874817/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1637&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874817/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874817/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6241306c2a92e8ee9689a4ce6ea960c0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6241306c2a92e8ee9689a4ce6ea960c0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=60923b359332c8dd8900b1d21984996f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=60923b359332c8dd8900b1d21984996f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=7ab20879d0168a0eb9dd8580c5fa736f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=7ab20879d0168a0eb9dd8580c5fa736f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=0d3c892e9df7990bea6e0c3b4762764d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=0d3c892e9df7990bea6e0c3b4762764d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=dc9c72e47f0862ebb26df2dd238041f9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=dc9c72e47f0862ebb26df2dd238041f9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6c66237e441b2d53e9748a00b9b672a8&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6c66237e441b2d53e9748a00b9b672a8&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=8eb70a483368828fcd22ed001d89d386&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=8eb70a483368828fcd22ed001d89d386&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>Eyes and Ears</category><category>sixthsense</category><pubDate>Tue, 15 Jun 2010 14:40:17 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1637#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1637</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1637</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874817/5895338</fs:itemid></item><item><title>矿泉水的历程</title><link>http://www.shui.us/archives/1607</link><content:encoded>&lt;p&gt;&lt;img class=&quot;size-medium wp-image-1624 alignright&quot; title=&quot;dfa.png&quot; src=&quot;http://www.shui.us/wp-content/uploads/2010/06/dfa6-300x128.png&quot; alt=&quot;&quot; width=&quot;300&quot; height=&quot;128&quot; /&gt;&lt;/p&gt;
&lt;p&gt;矿泉水喝了很久了&lt;/p&gt;
&lt;p&gt;真的没有很久坚持做一件事情了，维持这个博客让我起码觉得没有荒废很多。&lt;/p&gt;
&lt;p&gt;同时，这个博客也见证了我的成长，学习、工作、爱情&lt;/p&gt;
&lt;p&gt;“只有走过才能成长，只有经历过才会明白”&amp;#8212;写博客的原因之一&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;回顾整个博客的历程：&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;2009-06-17:购买了域名magicshui.cn&lt;/p&gt;
&lt;p&gt;之前的一段时间尝试过很多的免费的博客服务，但是都不尽人意，当然了，那时候还是对于blogger很懵懂，不知道这是干嘛的，所以没有珍惜&lt;a href=&quot;http://blogger.com&quot;&gt;blogger.com&lt;/a&gt;能够访问的日子，后悔了~不过，还是以很低的价钱购买了magicshui.cn，然后开始筹划自己的独立博客，这样很装13&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-1607&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;2009-06-19:购买了空间和数据库&lt;/p&gt;
&lt;p&gt;看到这个标题，你就知道我实在国内买的空间和数据库，因为只有国内的黑心厂商才会这样来拆分赚钱，Fuck，当时竟然还觉得挺便宜的，好傻呀！&lt;/p&gt;
&lt;p&gt;然后就开始了自己的折腾生涯，像很多人开始一样，我也没有听说过WordPress，用的是z-blog，但是，追求小众的想法让我对WordPress产生了好感，由于当时还没有什么数据，就删了重新建立了基于WordPress的站点。&lt;/p&gt;
&lt;p&gt;开始不知道要为自己的博客起一个怎样的名字，于是就问了波波童鞋，呵呵，因为他很搞（起码我是这样认为的，我们都是闷骚的淫）~于是，矿泉水诞生了！&lt;/p&gt;
&lt;p&gt;后来因为博客服务商不怎么地，就搜索更好的婆家，其后认识了&lt;a href=&quot;http://www.geekspace.cn/&quot;&gt;simple&lt;/a&gt;（北大的高材生），呵呵，后来还会在说到他的~然后，就经常在&lt;a href=&quot;http://www.geekspace.cn/&quot;&gt;simple&lt;/a&gt;的博客上踩踩，互访~是我的第一个友链，其实当时对于友情链接没有任何理会&lt;/p&gt;
&lt;p&gt;2009-08-19:购买了现在的空间&lt;/p&gt;
&lt;p&gt;在经历了不断地博客宕机和数据库的全部数据丢失以后，我真的对国内的这个所谓的服务商无奈了，于是，在Google之后发现了&lt;a href=&quot;http://hugege.com&quot;&gt;胡戈戈&lt;/a&gt;，呵呵，其实衡天小张也挺不错的，但是，本着不想备案的原则就买了外国的主机，事实证明我终于做了一个明智的选择。&lt;/p&gt;
&lt;p&gt;其后发现，自己一个人单枪匹马是不能创出名堂来，我们需要依附于一个组织，然后机缘巧合之中加入了&lt;a href=&quot;http://wpg.im&quot;&gt;WPG&lt;/a&gt;独立博客联盟，呵呵，这是一个很放松的地方，同时，也很年轻，估计我也算是早一批加入的人，但是也同样是早一批潜水的人，自我批评一下，就像我前边说到的，我在这里碰到了simple，呵呵，他比我再点进入组织~&lt;/p&gt;
&lt;p&gt;不管怎样，WPG当时、现在都是一个很小众很牛气的组织，因此能够挂出来一个组织的图标同样装13，哈哈~但是，由于那段时间的确很忙）——学生会的p事，就和组织脱节了，以至于连潜水也没有进行，再次自我批评~现在组织已经不断的发展壮大了，的确很牛哈~当然其中贡献最大的是Joya姐姐，大家可以去踩她的博客，不过还是那句话：非诚勿扰&lt;/p&gt;
&lt;p&gt;对于访问别人的博客，自己的观点也有了变化，开始只要你来我的博客，我就去你的留言，然后交换链接，但是，这的确没有任何意义，因为我们讲的是友情不只是链接，所以后来就把这些都淡化了不当成一种负担，这样才能快乐写博~&lt;/p&gt;
&lt;p&gt;2009-9-19：恋爱了&lt;/p&gt;
&lt;p&gt;这个和博客无关，但是那一天恋爱了，表白成功，顺利摆脱了单身，然后就时不时肉麻一下路过的童鞋，在这里对于被肉麻到的童鞋表示歉意~可以这样说，矿泉水见证了我的爱情历程，分分合合我想没有什么比他更清楚了~&lt;/p&gt;
&lt;p&gt;2009-12-3：生日&lt;/p&gt;
&lt;p&gt;这一天一直在研究Django的设置和GAE，所以就没打算怎么过生日，但是办公室的朋友们给了我一个以外的惊喜，当我被骗到了小花园时发现地上摆满了蜡烛，中间是18的字样，生日快乐从大家的口中说出，顿时那叫一个感动呀~但是没哭，不知道为什么~那天真的很高兴，很多东西意想不到，谢谢大家，谢谢所有的朋友们~爱你们&lt;/p&gt;
&lt;p&gt;2009-12-25：圣诞节彩蛋&lt;/p&gt;
&lt;p&gt;到了圣诞节了，这段时间一直不断地对主题小打小闹，同时在节日来临之际就像弄点不一样的东西，于是查了半天代码，在博客中加入了圣诞节彩蛋（&lt;a href=&quot;http://sizheng.org/&quot;&gt;小雪童鞋&lt;/a&gt;第一个发现彩蛋，鼓掌）&lt;/p&gt;
&lt;p&gt;2010-1-1：更换主题&lt;/p&gt;
&lt;p&gt;博客使用了很多主题，其中使用最长的是大家熟悉的wsly的那款简单的主题，因为他很简单，后来在林木木的博客上同样看到了这款主题的改进版以及林木木的演绎版本，看着自己的主题小打小闹有点惭愧~&lt;/p&gt;
&lt;p&gt;2010-3-1：更换域名&lt;/p&gt;
&lt;p&gt;后来大家知道，网络审查的确开始严格起来，GFW的威力是不容小视的，虽然博客空间在国外，但是域名确实国内的cn域名，为了避免麻烦在过年之际就购买了&lt;a href=&quot;http://godaddy.com&quot;&gt;godaddy&lt;/a&gt;的域名（奔着它的名声）shui.us,然后绑定成功，但是一直没有写一篇特别正式的文章来说这个事情，因为忘了，导致有些童鞋那两天rss订阅失败，真的很抱歉~后来，胡戈戈童鞋告诉：可以绑定三个域名，好吧，继续绑定着magicshui.cn，但是好不容易攒起来的pr也降为了0，而shui.us也要从头再来~&lt;/p&gt;
&lt;p&gt;2010~~&lt;/p&gt;
&lt;p&gt;后来就发现了原来网络不只是博客等等，微博客也是很迅猛的，于是千方百计翻过了墙然后重新进入twitter来探索天地，在上边认识了一些朋友，呵呵，链接上的小雪童鞋也是在这个上边认识的~&lt;/p&gt;
&lt;p&gt;其后，在不断地折腾中，少了很多文章呈现，因为觉得很多都不是很清晰发布的意义，于是就在草稿中放着放着没了~呵呵，但是，对于很多事情却多了自己的一份理解~男人成熟的标志是话少了，大家叫这个为：稳重。&lt;/p&gt;
&lt;p&gt;其实，折腾的道路还很漫长，我想用博客来记录自己的成长~&lt;/p&gt;


&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1607&amp;amp;title=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1607&amp;amp;title=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1607&amp;amp;title=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1607&amp;amp;submitHeadline=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&amp;amp;submitSummary=%0D%0A%0D%0A%E7%9F%BF%E6%B3%89%E6%B0%B4%E5%96%9D%E4%BA%86%E5%BE%88%E4%B9%85%E4%BA%86%0D%0A%0D%0A%E7%9C%9F%E7%9A%84%E6%B2%A1%E6%9C%89%E5%BE%88%E4%B9%85%E5%9D%9A%E6%8C%81%E5%81%9A%E4%B8%80%E4%BB%B6%E4%BA%8B%E6%83%85%E4%BA%86%EF%BC%8C%E7%BB%B4%E6%8C%81%E8%BF%99%E4%B8%AA%E5%8D%9A%E5%AE%A2%E8%AE%A9%E6%88%91%E8%B5%B7%E7%A0%81%E8%A7%89%E5%BE%97%E6%B2%A1%E6%9C%89%E8%8D%92%E5%BA%9F%E5%BE%88%E5%A4%9A%E3%80%82%0D%0A%0D%0A%E5%90%8C%E6%97%B6%EF%BC%8C%E8%BF%99%E4%B8%AA%E5%8D%9A%E5%AE%A2%E4%B9%9F%E8%A7%81%E8%AF%81%E4%BA%86%E6%88%91%E7%9A%84%E6%88%90%E9%95%BF%EF%BC%8C%E5%AD%A6%E4%B9%A0%E3%80%81%E5%B7%A5%E4%BD%9C%E3%80%81%E7%88%B1%E6%83%85%0D%0A%0D%0A%E2%80%9C%E5%8F%AA%E6%9C%89%E8%B5%B0%E8%BF%87%E6%89%8D%E8%83%BD%E6%88%90%E9%95%BF%EF%BC%8C%E5%8F%AA%E6%9C%89%E7%BB%8F%E5%8E%86%E8%BF%87%E6%89%8D%E4%BC%9A%E6%98%8E%E7%99%BD%E2%80%9D---%E5%86%99%E5%8D%9A%E5%AE%A2%E7%9A%84%E5%8E%9F%E5%9B%A0%E4%B9%8B%E4%B8&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1607&amp;amp;title=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1607&amp;amp;t=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1607&amp;amp;t=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B+-+http://b2l.me/3f495+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%0D%0A%0D%0A%E7%9F%BF%E6%B3%89%E6%B0%B4%E5%96%9D%E4%BA%86%E5%BE%88%E4%B9%85%E4%BA%86%0D%0A%0D%0A%E7%9C%9F%E7%9A%84%E6%B2%A1%E6%9C%89%E5%BE%88%E4%B9%85%E5%9D%9A%E6%8C%81%E5%81%9A%E4%B8%80%E4%BB%B6%E4%BA%8B%E6%83%85%E4%BA%86%EF%BC%8C%E7%BB%B4%E6%8C%81%E8%BF%99%E4%B8%AA%E5%8D%9A%E5%AE%A2%E8%AE%A9%E6%88%91%E8%B5%B7%E7%A0%81%E8%A7%89%E5%BE%97%E6%B2%A1%E6%9C%89%E8%8D%92%E5%BA%9F%E5%BE%88%E5%A4%9A%E3%80%82%0D%0A%0D%0A%E5%90%8C%E6%97%B6%EF%BC%8C%E8%BF%99%E4%B8%AA%E5%8D%9A%E5%AE%A2%E4%B9%9F%E8%A7%81%E8%AF%81%E4%BA%86%E6%88%91%E7%9A%84%E6%88%90%E9%95%BF%EF%BC%8C%E5%AD%A6%E4%B9%A0%E3%80%81%E5%B7%A5%E4%BD%9C%E3%80%81%E7%88%B1%E6%83%85%0D%0A%0D%0A%E2%80%9C%E5%8F%AA%E6%9C%89%E8%B5%B0%E8%BF%87%E6%89%8D%E8%83%BD%E6%88%90%E9%95%BF%EF%BC%8C%E5%8F%AA%E6%9C%89%E7%BB%8F%E5%8E%86%E8%BF%87%E6%89%8D%E4%BC%9A%E6%98%8E%E7%99%BD%E2%80%9D---%E5%86%99%E5%8D%9A%E5%AE%A2%E7%9A%84%E5%8E%9F%E5%9B%A0%E4%B9%8B%E4%B8%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1607&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1607/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&amp;amp;link=http://www.shui.us/archives/1607&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1607&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1607&amp;amp;title=%E7%9F%BF%E6%B3%89%E6%B0%B4%E7%9A%84%E5%8E%86%E7%A8%8B&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1607&quot;&gt;矿泉水的历程&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1607#comments&quot;&gt;No comment&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/blogs-way&quot; rel=&quot;tag&quot;&gt;blog's way&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874823/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1607&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874823/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874823/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=395be6db480f827f92f1ea0b593decb7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=395be6db480f827f92f1ea0b593decb7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5694478da8553079aa667ad65ffce2bc&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5694478da8553079aa667ad65ffce2bc&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5fb3ce7b33b0df838990bb002ed1b9b1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5fb3ce7b33b0df838990bb002ed1b9b1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=ac6ba478ba7c8b18fa75862830b827b6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=ac6ba478ba7c8b18fa75862830b827b6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=025dfebe1d4a8223efb89a712d239a8e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=025dfebe1d4a8223efb89a712d239a8e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=785d6bab6c32f10ddb26b7c20ff375f4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=785d6bab6c32f10ddb26b7c20ff375f4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=d062207e4495e3de0269fae3ee00b581&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=d062207e4495e3de0269fae3ee00b581&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1607/feed</wfw:commentRss><slash:comments>0</slash:comments><description>&lt;p&gt;矿泉水喝了很久了&lt;/p&gt;&lt;p&gt;真的没有很久坚持做一件事情了，维持这个博客让我起码觉得没有荒废很多。&lt;/p&gt;&lt;p&gt;同时，这个博客也见证了我的成长，学习、工作、爱情&lt;/p&gt;&lt;p&gt;“只有走过才能成长，只有经历过才会明白”---写博客的原因之一&lt;/p&gt;&lt;p&gt;&lt;strong&gt;回顾整个博客的历程：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;2009-06-17:购买了域名magicshui.cn&lt;/p&gt;&lt;p&gt;之前的一段时间尝试过很多的免费的博客服务，但是都不尽人意，当然了，那时候还是对于blogger很懵懂，不知道这是干嘛的，所以没有珍惜&lt;a href=&quot;http://blogger.com&quot;&gt;blogger.com&lt;/a&gt;能够访问的日子，后悔了~不过，还是以很低的价钱购买了magicshui.cn，然后开始筹划自己的独立博客，这样很装13&lt;/p&gt;&lt;p&gt; &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1607'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874823/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1607&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874823/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874823/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=395be6db480f827f92f1ea0b593decb7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=395be6db480f827f92f1ea0b593decb7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5694478da8553079aa667ad65ffce2bc&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5694478da8553079aa667ad65ffce2bc&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=5fb3ce7b33b0df838990bb002ed1b9b1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=5fb3ce7b33b0df838990bb002ed1b9b1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=ac6ba478ba7c8b18fa75862830b827b6&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=ac6ba478ba7c8b18fa75862830b827b6&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=025dfebe1d4a8223efb89a712d239a8e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=025dfebe1d4a8223efb89a712d239a8e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=785d6bab6c32f10ddb26b7c20ff375f4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=785d6bab6c32f10ddb26b7c20ff375f4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=d062207e4495e3de0269fae3ee00b581&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=d062207e4495e3de0269fae3ee00b581&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>My Way</category><category>blog's way</category><pubDate>Mon, 14 Jun 2010 01:28:51 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1607#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1607</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1607</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874823/5895338</fs:itemid></item><item><title>还会再见</title><link>http://www.shui.us/archives/1598</link><content:encoded>&lt;p class='fp'&gt;又到了毕业的季节，所有的教室都被占用进行论文答辩，给了我一个不去上自习的理由~寝室外的路上挂起了一个横幅：毕业生物资交流会：其实就是大四的学长学姐们买旧书~尤其是在星期六星期天，这个景象更加热闹~&lt;/p&gt;
&lt;p&gt;想想，自己来到大学已经两年了~而这些人是自己送走的第一届认识的人~&lt;/p&gt;
&lt;p&gt;刚来大学的时候，纯呀~呵呵&lt;/p&gt;
&lt;p&gt;大一的时候，认识的最高年级的是大三的，因为在学生会混迹，于是就会在主席的带领下进行工作~我们的主管主席，特别可爱善良的硕姐，今年也要毕业了，呵呵，硕姐去英国留学，赞一个~祝硕姐一切顺利~~其实，和哥哥姐姐们的交流不多，但是，从他们身上学到了一些东西，呵呵，尤其后来自己也大二了，留部了以后，就越发觉得他们的确很厉害，因为这些工作远没有我们想的那么简单~哎，让自己大一只顾着闷骚了（嘉铭的话），和哥哥姐姐们交流太少~遗憾了~&lt;/p&gt;
&lt;p&gt;在路上走着，就开始想着自己的毕业时光~&lt;/p&gt;
&lt;p&gt;不知道会是怎样的心情~&lt;/p&gt;
&lt;p&gt;但是我觉得不会像张震岳唱的那样，以后再也不见，大学里，有我敬爱的老师、学长，还有一帮可爱的学弟学妹，我会送走学长们，也同样会在学弟学妹的挥手告别中走出校门，但是，以后我们还会再见~&lt;/p&gt;
&lt;p&gt;想想，其实大学生活过的很快，不知不觉就已经过去了两年时光~还有两年，对自己说&lt;/p&gt;
&lt;p&gt;这个学期还好，没有什么大的波澜，一切很平淡~&lt;/p&gt;
&lt;p&gt;又是盛夏季节L:哥哥姐姐们~我们还会再见的~加油呀&lt;/p&gt;
&lt;/p&gt;

&lt;!-- Begin SexyBookmarks Menu Code --&gt;
&lt;div class=&quot;sexy-bookmarks sexy-bookmarks-expand sexy-bookmarks-bg-love&quot;&gt;
&lt;ul class=&quot;socials&quot;&gt;
		&lt;li class=&quot;sexy-delicious&quot;&gt;
			&lt;a href=&quot;http://delicious.com/post?url=http://www.shui.us/archives/1598&amp;amp;title=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;分享到del.icio.us&quot;&gt;分享到del.icio.us&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-digg&quot;&gt;
			&lt;a href=&quot;http://digg.com/submit?phase=2&amp;amp;url=http://www.shui.us/archives/1598&amp;amp;title=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;Digg this!&quot;&gt;Digg this!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-reddit&quot;&gt;
			&lt;a href=&quot;http://reddit.com/submit?url=http://www.shui.us/archives/1598&amp;amp;title=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;分享到Reddit&quot;&gt;分享到Reddit&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-yahoobuzz&quot;&gt;
			&lt;a href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http://www.shui.us/archives/1598&amp;amp;submitHeadline=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&amp;amp;submitSummary=%E5%8F%88%E5%88%B0%E4%BA%86%E6%AF%95%E4%B8%9A%E7%9A%84%E5%AD%A3%E8%8A%82%EF%BC%8C%E6%89%80%E6%9C%89%E7%9A%84%E6%95%99%E5%AE%A4%E9%83%BD%E8%A2%AB%E5%8D%A0%E7%94%A8%E8%BF%9B%E8%A1%8C%E8%AE%BA%E6%96%87%E7%AD%94%E8%BE%A9%EF%BC%8C%E7%BB%99%E4%BA%86%E6%88%91%E4%B8%80%E4%B8%AA%E4%B8%8D%E5%8E%BB%E4%B8%8A%E8%87%AA%E4%B9%A0%E7%9A%84%E7%90%86%E7%94%B1%7E%E5%AF%9D%E5%AE%A4%E5%A4%96%E7%9A%84%E8%B7%AF%E4%B8%8A%E6%8C%82%E8%B5%B7%E4%BA%86%E4%B8%80%E4%B8%AA%E6%A8%AA%E5%B9%85%EF%BC%9A%E6%AF%95%E4%B8%9A%E7%94%9F%E7%89%A9%E8%B5%84%E4%BA%A4%E6%B5%81%E4%BC%9A%EF%BC%9A%E5%85%B6%E5%AE%9E%E5%B0%B1%E6%98%AF%E5%A4%A7%E5%9B%9B%E7%9A%84%E5%AD%A6%E9%95%BF%E5%AD%A6%E5%A7%90%E4%BB%AC%E4%B9%B0%E6%97%A7%E4%B9%A6%7E%E5%B0%A4%E5%85%B6%E6%98%AF%E5%9C%A8%E6%98%9F%E6%9C%9F%E5%85%AD%E6%98%9F%E6%9C%9F%E5%A4%A9%EF%BC%8C%E8%BF%99%E4%B8%AA%E6%99%AF%E8%B1%A1%E6%9B%B4%E5%8A%A0%E7%83%AD%E9%97%B9%7E%20%20%E6%83%B3%E6%83%B3%EF%BC%8C%E8&amp;amp;submitCategory=science&amp;amp;submitAssetType=text&quot; rel=&quot;nofollow&quot; title=&quot;Buzz up!&quot;&gt;Buzz up!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-stumbleupon&quot;&gt;
			&lt;a href=&quot;http://www.stumbleupon.com/submit?url=http://www.shui.us/archives/1598&amp;amp;title=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;Stumble upon something good? Share it on StumbleUpon&quot;&gt;Stumble upon something good? Share it on StumbleUpon&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-myspace&quot;&gt;
			&lt;a href=&quot;http://www.myspace.com/Modules/PostTo/Pages/?u=http://www.shui.us/archives/1598&amp;amp;t=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;发到MySpace&quot;&gt;发到MySpace&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-facebook&quot;&gt;
			&lt;a href=&quot;http://www.facebook.com/share.php?v=4&amp;amp;src=bm&amp;amp;u=http://www.shui.us/archives/1598&amp;amp;t=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;分享到Facebook&quot;&gt;分享到Facebook&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-twitter&quot;&gt;
			&lt;a href=&quot;http://twitter.com/home?status=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81+-+http://b2l.me/zjtst+&amp;amp;source=shareaholic&quot; rel=&quot;nofollow&quot; title=&quot;Tweet This!&quot;&gt;Tweet This!&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-mail&quot;&gt;
			&lt;a href=&quot;mailto:?subject=%22%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81%22&amp;amp;body=I+thought+this+article+might+interest+you.%0A%0A%22%E5%8F%88%E5%88%B0%E4%BA%86%E6%AF%95%E4%B8%9A%E7%9A%84%E5%AD%A3%E8%8A%82%EF%BC%8C%E6%89%80%E6%9C%89%E7%9A%84%E6%95%99%E5%AE%A4%E9%83%BD%E8%A2%AB%E5%8D%A0%E7%94%A8%E8%BF%9B%E8%A1%8C%E8%AE%BA%E6%96%87%E7%AD%94%E8%BE%A9%EF%BC%8C%E7%BB%99%E4%BA%86%E6%88%91%E4%B8%80%E4%B8%AA%E4%B8%8D%E5%8E%BB%E4%B8%8A%E8%87%AA%E4%B9%A0%E7%9A%84%E7%90%86%E7%94%B1%7E%E5%AF%9D%E5%AE%A4%E5%A4%96%E7%9A%84%E8%B7%AF%E4%B8%8A%E6%8C%82%E8%B5%B7%E4%BA%86%E4%B8%80%E4%B8%AA%E6%A8%AA%E5%B9%85%EF%BC%9A%E6%AF%95%E4%B8%9A%E7%94%9F%E7%89%A9%E8%B5%84%E4%BA%A4%E6%B5%81%E4%BC%9A%EF%BC%9A%E5%85%B6%E5%AE%9E%E5%B0%B1%E6%98%AF%E5%A4%A7%E5%9B%9B%E7%9A%84%E5%AD%A6%E9%95%BF%E5%AD%A6%E5%A7%90%E4%BB%AC%E4%B9%B0%E6%97%A7%E4%B9%A6%7E%E5%B0%A4%E5%85%B6%E6%98%AF%E5%9C%A8%E6%98%9F%E6%9C%9F%E5%85%AD%E6%98%9F%E6%9C%9F%E5%A4%A9%EF%BC%8C%E8%BF%99%E4%B8%AA%E6%99%AF%E8%B1%A1%E6%9B%B4%E5%8A%A0%E7%83%AD%E9%97%B9%7E%20%20%E6%83%B3%E6%83%B3%EF%BC%8C%E8%22%0A%0AYou+can+read+the+full+article+here%3A%20http://www.shui.us/archives/1598&quot; rel=&quot;nofollow&quot; title=&quot;Email this to a friend?&quot;&gt;Email this to a friend?&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-comfeed&quot;&gt;
			&lt;a href=&quot;http://www.shui.us/archives/1598/feed&quot; rel=&quot;nofollow&quot; title=&quot;订阅这篇文章的评论？&quot;&gt;订阅这篇文章的评论？&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-google&quot;&gt;
			&lt;a href=&quot;&quot; rel=&quot;nofollow&quot; title=&quot;&quot;&gt;&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-friendfeed&quot;&gt;
			&lt;a href=&quot;http://www.friendfeed.com/share?title=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&amp;amp;link=http://www.shui.us/archives/1598&quot; rel=&quot;nofollow&quot; title=&quot;分享到FriendFeed&quot;&gt;分享到FriendFeed&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-fwisp&quot;&gt;
			&lt;a href=&quot;http://fwisp.com/submit?url=http://www.shui.us/archives/1598&quot; rel=&quot;nofollow&quot; title=&quot;分享到Fwisp&quot;&gt;分享到Fwisp&lt;/a&gt;
		&lt;/li&gt;
		&lt;li class=&quot;sexy-evernote&quot;&gt;
			&lt;a href=&quot;http://www.evernote.com/clip.action?url=http://www.shui.us/archives/1598&amp;amp;title=%E8%BF%98%E4%BC%9A%E5%86%8D%E8%A7%81&quot; rel=&quot;nofollow&quot; title=&quot;Clip this to Evernote&quot;&gt;Clip this to Evernote&lt;/a&gt;
		&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;clear:both;&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- End SexyBookmarks Menu Code --&gt;

&lt;hr /&gt;
&lt;p&gt;&lt;small&gt;© 小水 for &lt;a href=&quot;http://www.shui.us&quot;&gt;矿泉水&lt;/a&gt;, 2010&lt;br /&gt;
Source: &lt;a href=&quot;http://www.shui.us/archives/1598&quot;&gt;还会再见&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.shui.us/archives/1598#comments&quot;&gt;2 comments&lt;/a&gt;&lt;br /&gt;
Post tags: &lt;a href=&quot;http://www.shui.us/archives/tag/see-you-later&quot; rel=&quot;tag&quot;&gt;see you later&lt;/a&gt;&lt;br/&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Feed enhanced by &lt;a href='http://planetozh.com/blog/my-projects/wordpress-plugin-better-feed-rss/'&gt;Better Feed&lt;/a&gt; from  &lt;a href='http://planetozh.com/blog/'&gt;Ozh&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874854/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1598&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874854/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874854/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=527d89e0c7e567284dce4df903c8ac37&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=527d89e0c7e567284dce4df903c8ac37&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a0c8832f31335e647a7af1a4580b0674&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a0c8832f31335e647a7af1a4580b0674&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=42fc91885b187d401d5ded6ab9f548f8&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=42fc91885b187d401d5ded6ab9f548f8&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6051db69a1e33f3a4e4ed3ca7973353d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6051db69a1e33f3a4e4ed3ca7973353d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=f8428039725618670faf008e67002611&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=f8428039725618670faf008e67002611&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=ed4b4cdd643df66ca84f793fa701ffac&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=ed4b4cdd643df66ca84f793fa701ffac&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=402a7280479922d547059dbd8b03bf93&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=402a7280479922d547059dbd8b03bf93&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.shui.us/archives/1598/feed</wfw:commentRss><slash:comments>2</slash:comments><description>&lt;p&gt;又到了毕业的季节，所有的教室都被占用进行论文答辩，给了我一个不去上自习的理由~寝室外的路上挂起了一个横幅：毕业生物资交流会：其实就是大四的学长学姐们买旧书~尤其是在星期六星期天，这个景象更加热闹~&lt;/p&gt;&lt;p&gt;想想，自己来到大学已经两年了~而这些人是自己送走的第一届认识的人~&lt;/p&gt;&lt;p&gt;刚来大学的时候，纯呀~呵呵&lt;/p&gt; &lt;span class='read-more'&gt;&lt;a href='http://www.shui.us/archives/1598'&gt;[Read More…]&lt;/a&gt;&lt;/span&gt;&lt;div class=&quot;clear-float&quot;&gt;&lt;/div&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/380874854/magicshui/feedsky/s.gif?r=http://www.shui.us/archives/1598&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/magicshui/380874854/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/magicshui/380874854/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=527d89e0c7e567284dce4df903c8ac37&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=527d89e0c7e567284dce4df903c8ac37&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=a0c8832f31335e647a7af1a4580b0674&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=a0c8832f31335e647a7af1a4580b0674&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=42fc91885b187d401d5ded6ab9f548f8&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=42fc91885b187d401d5ded6ab9f548f8&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=6051db69a1e33f3a4e4ed3ca7973353d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=6051db69a1e33f3a4e4ed3ca7973353d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=f8428039725618670faf008e67002611&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=f8428039725618670faf008e67002611&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=ed4b4cdd643df66ca84f793fa701ffac&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=ed4b4cdd643df66ca84f793fa701ffac&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/magicshui?a=402a7280479922d547059dbd8b03bf93&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/magicshui?i=402a7280479922d547059dbd8b03bf93&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><category>My Way</category><category>see you later</category><pubDate>Sun, 06 Jun 2010 13:25:07 +0800</pubDate><author>小水</author><comments>http://www.shui.us/archives/1598#comments</comments><guid isPermaLink="false">http://www.shui.us/archives/1598</guid><dc:creator>小水</dc:creator><fs:srclink>http://www.shui.us/archives/1598</fs:srclink><fs:srcfeed>http://magicshui.cn/?feed=rss2</fs:srcfeed><fs:itemid>feedsky/magicshui/~7786082/380874854/5895338</fs:itemid></item></channel></rss>
