Archive for web-2

ExtractionError: Can't extract file(s) to egg cache The following error occurred while trying to extract file(s) to the Python egg cache: [Errno 13] Permission denied: '/var/www/.python-eggs' The Python egg cache directory is currently set to: /var/www/.python-eggs Perhaps your account does not have write access to this directory? You can change the cache directory by setting the PYTHON_EGG_CACHE environment variable to point to an accessible directory. 解决办法: mkdir /var/www/.pyt

Continue

用户注册需要邮箱的验证,找回密码需要邮箱。我选择用gmail邮箱来发送邮件,配置如下: settings.py文件中添加: #邮箱设置 EMAIL_HOST = 'smtp.gmail.com' #EMAIL_PORT = '465' EMAIL_HOST_USER = 'name@gmail.com' EMAIL_HOST_PASSWORD = 'password' EMAIL_USE_TLS = True 端口的设置,可能是默认的25,开始没有成功。 发送邮件代码: from django.core.mail import send_mail send_mail('subject','body','name@gmail.com', ['to_some@mail.com'],fail_silently=True) 非常简单。

Continue

用户登录的时候,选择是否记住登录状态,就是所谓的自动登录。又是从官网上找到了,兴奋ing~ django官网的文档很好,很详细。 Browser-length sessions vs. persistent sessions一节讲django的记录用户登录的机制。 settings文件里的<tt class="xref std std-setting docutils literal"><span class="pre">SESSION_EXPIRE_AT_BROWSER_CLOSE为True时,在用户关闭浏览器时,登录状态就会失效。</span></tt> <tt class="xref std std-setting docutils literal"><span class="pre">为False是,用户关闭浏览器后,下次打开浏览器不需要重新登录。</span></tt> <tt class="xref std std-setting docutils literal"><span class="pre">如果需要用户能够哦你各种这个功能,我们需要

Continue

django提供的forms可以很方便的实现创建表单,表单内容的过滤,提交。但是表单模板返回的固定代码。 开始学习的翻译文档,forms自定义表单模板的成分很少,特别是errors的介绍。查资料没找到。又看官网,找到了(还是官网好哇~)。 复制代码上来,做分享。 &lt;div&gt; &lt;label for="id_username"&gt;用户名:&lt;/label&gt; &lt;div&gt; {{ form.username }} {% if form.username.errors %} &lt;span&gt; {% for error in form.username.errors %} {{ error|escape }} {% endfor %} &lt;/span&gt; {% else %} &lt;p&gt;用户名中只能包含字母、数字、下划线和汉字。&lt;p&gt; {% endif %} &lt;/div&gt; &lt;/div&gt;

Continue

&nbsp; 记录几个常用的过滤器: {{my_text|escape|linebreaks }} escape 按照以下的规则,转义一个HTML字符串: <ul> <li id="cn237"><tt>"&amp;"</tt> to <tt>"&amp;amp;"</tt></li> </ul> <ul> <li id="cn238"><tt>&lt;</tt> to <tt>"&amp;lt;"</tt></li> </ul> <ul> <li id="cn239"><tt>&gt;</tt> to <tt>"&amp;gt;"</tt></li> </ul> <ul> <li id="cn240"><tt>'"'</tt> (double quote) to <tt>'&amp;quot;'</tt></li> </ul> <tt>"'"</tt> (single quote) to <tt>'&amp;#39;'</tt> linebreaks 把换行符转换成&lt;p&gt;和&lt;br /&gt;标签。

Continue

用django写了一个站内用户之间发送消息的应用,应用虽小但五脏俱全。写完后总结了一下: 1、建立messages应用。 2、models设计:设置了7个字段,标题,内容,时间,发消息送人,接受人消息,发送消息是否删除,接受消息是否删除。 3、admin.py简单设置了一下,加入群发的功能。 4、forms实现:接收消息的人的验证,标题的验证,数据的保存。 5、url.py设置:6个,发送的消息,接收的消息,发送消息,查看消息,删除消息,回复消息。 6、views.py实现:每个URL对应一个def,这里在官网看到一个用法,翻译的2.0文档没看到(没仔细看), from django.contrib.auth.decorators import login_required @login_required(login_url='/users/login/')#在每个def上面加上这么一句就OK了,login_url指定了跳转到你设置的登录URL。我的登录URL让我改了。 用户注册用户名需要过滤。记录

Continue

在上一篇中<a title="django contrib.admin使用记录一" href="http://0x55aa.sinaapp.com/web-2/275.html" target="_blank">django contrib.admin使用记录一</a> 中ArticlesAdmin,类添加 <pre lang="python">#用于显示admin管理界面的change中显示的属性。 list_display = ('title','user','ip','datetime') #可以在change页面中直接点击title和user进行编辑 list_display_links = ('title','user') #用那个属性对所有对象进行筛选,可在右边显示 list_filter = ('user',) #按哪个属性搜索 search_fields = ('title',)</pre> 更多属性参考django官网‘The Django admin site’。 在models.py文件建立Articles类的内部类: #内部类,用于

Continue

安装管理应用程序。在你的 INSTALLED_APPS 的设置中加入 "django.contrib.admin" 。 如果你是一直照步骤做下来的,请确认 "django.contrib.sessions" , "django.contrib.auth" , 和 "django.contrib.contenttypes" 前面的注释已去掉,因为管理程序需要它们。请同时去掉所有 MIDDLEWARE_CLASSES 设置行中的注释,并清除 TEMPLATE_CONTEXT_PROCESSOR 设置,以便它可以重新使用缺省值。 运行 python manage.py syncdb 。这一步将生成管理界面使用的额外数据库表。 修改url.py文件,修改三个地方。 &nbsp; 在应用目录下,新建文件admin.py,写django代码: <pre lang="python"> #-*- coding:utf-8 -*- from django.contrib import admin from plant.articles.models impo

Continue

&nbsp; 使用步骤: 1、在settings文件中的INSTALLED_APPS中加入'django.contrib,comments',。 2、执行命令,manage.py syncdb,创建数据表。 3、urls.py中 (r'^comments/',include('django.contrib.comments.urls')),。 4、编辑templates文档。 &nbsp; <pre lang="html4strict" > {% load comments %} {% get_comment_list for articles.Articles a.id as comment_list %} {% for comment in comment_list %} <div> <p>评论人:<b>{{comment.user.username}}{{comment.user.email}}</b>|评论时间:{{comment.submit_date|date:"Y-m-d H:i"}} |ip地址:{{comment.

Continue

这两个的安装都是直接命令安装, apt-get install libapache2-mod-wsgi 查看mod_wsgi是否安装成功,找文件/usr/lib/apache2/modules/mod_wsgi.so 编辑/etc/apache2/httpd.conf,加入: #  LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so   WSGIScriptAlias / "/data/web/test/mysite/apache/django.wsgi"     &lt;Directory "/data/web/mysite"&gt;   Order Deny,Allow   Allow from all   &lt;/Directory&gt; #那句不用写,加入以后会提示“已经载入mod_wsgi” [warn] module wsgi_module is already loaded, skipping 以后还要再配置一次,现在做个测试。主要参照官网。

Continue