小编Rog*_*ger的帖子

django模型表单对象的自动创建日期?

自动设置对象的创建日期的最佳方法是什么,以及将在上次更新对象时记录的字段?

在我的模型中,我有:

created_at = models.DateTimeField(False, True, editable=False)
updated_at = models.DateTimeField(True, True, editable=False)
Run Code Online (Sandbox Code Playgroud)

在我看来:

if request.method == 'POST':
    form = MyForm(request.POST)
    if form.is_valid():
        obj = form.save(commit=False)
        obj.user = request.user
        obj.save()
        return HttpResponseRedirect('obj_list')
Run Code Online (Sandbox Code Playgroud)

我收到错误:

objects_object.created_at may not be NULL
Run Code Online (Sandbox Code Playgroud)

我是否必须自己手动设置此值?我认为这是传递给DateTimeFields的参数点(或者它们只是默认值,因为我设置'editable = False'它们不会显示在表单上,​​因此不会在请求中提交,因此不要进入表格?).

这样做的最佳方法是什么?一个init方法?

谢谢

ps - 我是django和Python的新手......

python django django-models

126
推荐指数
2
解决办法
8万
查看次数

在模板中使用Django设置

我希望能够将某些配置信息放在我的settings.py文件中 - 例如站点名称,站点URL等.

如果我这样做,我怎么才能在模板中访问这些设置?

谢谢

python django django-templates

23
推荐指数
2
解决办法
2万
查看次数

如何在保存模型后向django管理员显示消息?

我想在保存特定模型后向管理员显示一条消息,例如"现在启用该系列".

如果它是一个列表操作(message_user),我可以看到我如何做到这一点,但我无法从主CRUD表单中看到如何做到这一点.

有谁知道怎么样?

谢谢

django django-admin

19
推荐指数
3
解决办法
2万
查看次数

python:无法连接'str'和'long'对象

我正在尝试在django中设置一个选择字段,但我不认为这是一个django问题.选择字段采用2元组的可迭代(例如,列表或元组)作为该字段的选择.

这是我的代码:

self.fields['question_' + question.id] = forms.ChoiceField(
                label=question.label,
                help_text=question.description,
                required=question.answer_set.required,
                choices=[("fe", "a feat"), ("faaa", "sfwerwer")])
Run Code Online (Sandbox Code Playgroud)

由于某种原因,我总是得到以下错误:

TypeError - cannot concatenate 'str' and 'long' objects
Run Code Online (Sandbox Code Playgroud)

最后一行始终突出显示.

我不是想连接任何东西.几乎不管我将列表更改为'choices'参数,我都会收到此错误.

这是怎么回事?

python

17
推荐指数
2
解决办法
4万
查看次数

django queryset for many-to-many field

我有以下Django 1.2模型:

class Category(models.Model):
    name = models.CharField(max_length=255)

class Article(models.Model):
    title = models.CharField(max_length=10, unique=True)
    categories = models.ManyToManyField(Category)

class Preference(models.Model):
    title = models.CharField(max_length=10, unique=True)
    categories = models.ManyToManyField(Category)
Run Code Online (Sandbox Code Playgroud)

如何执行一个查询,该查询将为我提供与给定Preference对象相关的任何相同类别相关联的所有Article对象?

例如,如果我有一个与"鱼","猫"和"狗"类别相关的偏好对象,我想要一个与"鱼","猫"或"狗"相关的所有文章的列表.

django django-queryset

14
推荐指数
1
解决办法
1万
查看次数

如何在django自定义身份验证后端访问请求?

我想用django的身份验证执行以下操作:

  • 记录错误的登录尝试
  • 在'x'次错误登录尝试后暂时锁定帐户
  • 登录成功登录.

我认为自定义auth后端将是解决方案.

我可以完成我想要的大部分工作,但我想记录进行尝试的用户的IP和REMOTE_HOST.

如何在auth后端访问请求对象?

谢谢

authentication django

9
推荐指数
1
解决办法
4204
查看次数

将jQuery图表转换为PDF

我发现了两个我喜欢的jQuery图表插件 - flot和jqPlot.我正在考虑在我的网站的前端使用其中一个.

但是,我还需要能够允许用户以PDF格式导出数据.我理想地寻找纯Python解决方案,但可以推送到Java或PHP.生成的图表的质量是最重要的因素.

我考虑的选项是:

  • 在服务器上生成图表,并使用这些图表创建PDF.我已经看过matplotlib和其他几个python图表包,但图表看起来并不像flot或jqPlot那样精致.
  • 使用Rhino和Env.js在服务器上运行相同的jQuery代码,并以某种方式捕获生成的图表并将其插入到PDF中.这可能与Rhino有关吗?它有多难?我见过Rhino-canvas项目,但看起来已经过时了.

这样做的最佳方式是什么?如果我能让Rhino解决方案发挥作用,那就更好了,因为它保持了前端和生成的PDF之间的一致性.

python jquery charts

8
推荐指数
1
解决办法
3610
查看次数

jQuery工具:如何关闭叠加层?

我有一个编辑表单,我使用Jquery Tools显示为叠加层.

在我的对象列表视图页面上,每个对象都有<a href="#" class="edit_button">Edit</a>.所有这些都附加到相同的叠加形式:

        $(".edit_button[rel]").overlay({ top: '5px',
            fixed: false,

            mask: {
                color: '#ebecff',
                loadSpeed: 200,
                opacity: 0.9
            }
        });
Run Code Online (Sandbox Code Playgroud)

编辑表单叠加层包含一个取消按钮:

<a href="#" class="cancel">Cancel</a>
Run Code Online (Sandbox Code Playgroud)

如何使此取消按钮关闭叠加?似乎我可以访问Overlay API对象的唯一方法是使用创建它的选择器 - 在这种情况下,$('.edit').each()因为我不知道哪一个触发了叠加层.

我真正想要做的是:

$('.cancel').click(function(e){
    var target = e.originalTarget || e.srcElement;
    $(target).parent().parent().getOverlay().close();
});
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

有没有办法我可以关闭叠加而不做:

$(".edit_button[rel]").each(function() {
    $(this).overlay().close();
});
Run Code Online (Sandbox Code Playgroud)

jquery-tools

5
推荐指数
1
解决办法
8599
查看次数