社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Py站长  »  全部回复
回复总数  988
11 年前
回复了 Py站长 创建的主题 » django1.6版下如何实现{%load markup%},解决方法看不懂

@wxgwin markup方法已经废弃了,无法在模板中使用了,有一个替代方案,就是自己写filter,然后在模板中使用。

11 年前
回复了 Py站长 创建的主题 » [杭州][阿里]招聘Python/Django开发工程师

@jackrose 去试试呗,:)

@blackholll 嗯,不错

http://stackoverflow.com/questions/16230293/admin-logentry-user-has-a-relation-with-model-class-api-models-user-whic

你的INSTALLED_APPS 中的APp是account

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'accounttest',
    'account'
)

但是你的app_label 是passport

class Meta:
    app_label = 'passport'

你看下是不是这个原因

11 年前
回复了 Py站长 创建的主题 » django1.6版下如何实现{%load markup%},解决方法看不懂

先引入一个filter.py

import markdown2
.. all other imports needed..

register = template.Library()

@register.filter(is_safe=True)
@stringfilter
def markdown2(value):
    return mark_safe(markdown2.markdown(force_unicode(value),safe_mode=True,enable_attributes=False))

然后就可以在你的template模块中使用这个Filter了啊

{% load myapp_markup %}
{{ value|markdown2 }}
11 年前
回复了 Py站长 创建的主题 » 求助:关于 Model 模型插入时触发事件的问题

@呆滞的慢板 看了一下,方法是正确的。不过有一个问题说的不对。不需要重启Web,ThreadLocal是线程的,只覆盖一次请求,请求断掉后,数据也就丢失了。

11 年前
回复了 Py站长 创建的主题 » 求助:关于 Model 模型插入时触发事件的问题

@呆滞的慢板 想法挺好,不过 当前登录者在 用户请求的request里面。

一个比较直接的做法是,每次请求都将 request.user 保存到共用的数据结构里(当然是用拦截器来做),然后你在其它地方就可以使用了。注意,如果用户没有登录的情况。

11 年前
回复了 Py站长 创建的主题 » django 模板多重循环问题

你可以先在View里处理好,做成简单数据模型后,然后再在模板里填写

11 年前
回复了 Py站长 创建的主题 » 求助:关于 Model 模型插入时触发事件的问题

写个函数封装这些操作,你还需要传入当前操作者是谁呢

11 年前
回复了 Py站长 创建的主题 » 请问大家是业余使用Django还是专职?

兼职,兴趣

这个实现起来稍微复杂了一些,需要在发表评论的时候 将 @ 的人解析出来,然后给他们发信息

11 年前
回复了 Py站长 创建的主题 » 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)

@CodeMonkey徐栋栋-weibo 嗯,起名字起的不是很好

@andywu1206 就个就像是论坛的新建贴子,删除帖子啦。

建议 你先按照官网的 https://docs.djangoproject.com/en/1.6/intro/tutorial01/ 一步一步搞起来,官网是一个投票的例子,你可以将其改成 每次投票时 新建一个帖子

这。。。除非你将C#网站的链接转发给Django网站来进行处理

@绿波畅游-weibo :)

11 年前
回复了 Py站长 创建的主题 » 请问是否有如下功能的开源网站供学习。

https://www.djangopackages.com/grids/g/mobile/ 这里你看看吧

有一种方法是: http://catherinetenajeros.blogspot.jp/2013/03/how-to-handle-multiple-forms-in-one-view.html

Sometimes we make two forms or more in one page which result to unnecessary output or error. To handle this problem, we have to put unique value in each form.

#page.html
<form method="POST">
    {{form1.as_p}}
    <input type="hidden" name="action" value="first">
    <input type="submit" value="Submit">
</form>

<form method="POST">
    {{form2.as_p}}
    <input type="hidden" name="action" value="second">
    <input type="submit" value="Submit">
</form>

<form method="POST">
    {{form3.as_p}}
    <input type="hidden" name="action" value="third">
    <input type="submit" value="Submit">
</form>

Notice that in every form I put <input type="hidden" name="action"> which has different value (first, second, third). This hidden value will be use in views.

#views.py
def myview(request):
    if request.method == 'POST':
        if request.POST['action'] == 'first':
            //do stuff here for form1

        elif request.POST['action'] == 'second':
            //do stuff here for form2

        elif request.POST['action'] == 'third':
            //do stuff here for form3

    return render(request, 'mypage.html')

In this way the system will know which form must be process.

This is only a basic sample. There are many ways to handle this kind of problem.

关于用户登录注册 ,可以参考: https://github.com/omab/django-social-auth 或者 https://github.com/pennersr/django-allauth

新建链接 和 删除链接是什么意思?

11 年前
回复了 Py站长 创建的主题 » 请问:”python编程实践“一书在例代码在何处下载?

http://www.pin5i.com/showtopic-python%E7%B3%BB%E5%88%97%E4%B9%8B009-python%E7%BC%96%E7%A8%8B%E5%AE%9E%E8%B7%B5%E6%95%99%E5%AD%A6%E8%A7%86%E9%A2%91%E6%95%99%E7%A8%8B26%E9%9B%86-%E6%BA%90%E7%A0%81.html 这个试试

11 年前
回复了 Py站长 创建的主题 » 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)

@405436867

你要用 uwsgi --http :8000 --chdir /home/work/src/sites/testdjango1/testdjango/mysite --module django_wsgi 这种啊

11 年前
回复了 Py站长 创建的主题 » 请教:关于django的数据库查询结果集 RawQuerySet的转换

试试这个 看看 http://stackoverflow.com/questions/19836036/return-queryset-from-a-rawqueryset

如果你每次翻页都是请求后端,那查询数据库就是必须的啊。除非你在前端使用Ajax无刷页面,将这些用户点击的商品ID列表 缓存在前端,这样可以在前端就进行遍历进行判断就可以。

如果是单个用户点赞次数不多(读多写少)的话,其实你可以将用户点赞数据缓存在内存里(或者Nosql里),速度快。

11 年前
回复了 Py站长 创建的主题 » 求怎么,删除整个表的数据

实在不行的话,就用SQL直接删呗,简单直接

11 年前
回复了 Py站长 创建的主题 » django怎么实现文章预览?

简单的话 可以 对内容进行截断显示 就可以了

@Lebesgue 没搞过extra,刚查了一下,貌似资源蛮少的,多表查询 还是建议用 select_related 啊

11 年前
回复了 Py站长 创建的主题 » 基于 nginx + uwsgi + virtualenv 简单的部署 Django 应用

支持!

图片我建议用 http://weibotuchuang.sinaapp.com/

这个来弄,它是用新浪微博作为图床的,不会有QQ图片拦截

11 年前
回复了 Py站长 创建的主题 » 刚学eclipse+django,遇到这样一个问题。

@codind 估计是Eclipse或Eclipse插件的问题,你用的是什么Eclipse版本?

11 年前
回复了 Py站长 创建的主题 » 刚学eclipse+django,遇到这样一个问题。

貌似我没有这个问题哈,

建议安装aptana 插件来Django开发

一个类似的:

from django import template

from django.core.urlresolvers import reverse

import datetime

from django.template.defaultfilters import timesince as _timesince
from django.template.defaultfilters import date as _date
from django.utils.tzinfo import LocalTimezone
from django.utils.translation import ugettext_lazy as _

from django.utils.safestring import mark_safe
from django.utils.encoding import force_unicode

register = template.Library()


@register.filter
def my_timeslice(d, now = None):
    # Convert datetime.date to datetime.datetime for comparison.
    if not d:
        return ''
    if not isinstance(d, datetime.datetime):
        d = datetime.datetime(d.year, d.month, d.day)
    if now and not isinstance(now, datetime.datetime):
        now = datetime.datetime(now.year, now.month, now.day)
    if not now:
        if d.tzinfo:
            now = datetime.datetime.now(LocalTimezone(d))
        else:
            now = datetime.datetime.now()
    # ignore microsecond part of 'd' since we removed it from 'now'
    delta = now - (d - datetime.timedelta(0, 0, d.microsecond))
    since = delta.days * 24 * 60 * 60 + delta.seconds
    if since // (60 * 60 * 24) < 3:
        return _("%s ago") % _timesince(d)
    return _date(d, "Y-m-d H:i")