小编mli*_*ner的帖子

获取Python中的当前时间(以毫秒为单位)?

如何在Python中获取当前时间(以毫秒为单位)?

python time datetime

468
推荐指数
13
解决办法
66万
查看次数

为什么django的model.save()不调用full_clean()?

我只是好奇是否有人知道django的orm是否有充分理由不在模型上调用'full_clean',除非它被保存为模型表单的一部分.

请注意,调用模型的save()方法时,不会自动调用full_clean().如果要为自己手动创建的模型运行一步模型验证,则需要手动调用它. django完全干净的文档

(注意:为Django 1.6更新了引用...以前的django文档也有关于ModelForms的警告.)

有没有充分的理由让人们不想要这种行为?我想如果你花时间为模型添加验证,那么每次保存模型时都需要运行验证.

我知道如何使一切正常工作,我只是在寻找解释.

python django django-models django-validation

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

将int转换为ASCII并返回Python

我正在为我的网站制作一个URL缩短器,我当前的计划(我愿意接受建议)是使用节点ID来生成缩短的URL.因此,理论上,节点26可能是short.com/z,节点1可能是short.com/a,节点52可能是short.com/Z,节点104可能是short.com/ZZ.当用户访问该URL时,我需要反转该过程(显然).

我可以想到一些方法可以解决这个问题,但我猜测有更好的方法.有什么建议?

python ascii encode integer

123
推荐指数
5
解决办法
28万
查看次数

使用XPATH搜索包含 的文本

我使用XPather Browser在HTML页面上检查我的XPATH表达式.

我的最终目标是在Selenium中使用这些表达式来测试我的用户界面.

我有一个HTML文件,其内容与此类似:

<tr>
  <td>abc</td>
  <td>&nbsp;</td>
</tr>

我想选择一个包含字符串" &nbsp;" 的文本的节点.

使用像"abc"这样的普通字符串是没有问题的.我使用类似的XPATH //td[text()="abc"].

当我尝试使用XPATH时,//td[text()="&nbsp;"]它什么都不返回.是否有关于" &"的文本的特殊规则?

xml search selenium xpath

114
推荐指数
4
解决办法
20万
查看次数

Django使用不同的字段注释计数

我有两个松散定义的模型:

class InformationUnit(models.Model):
    username = models.CharField(max_length=255)
    project = models.ForeignKey('Project')
    ...

class Project(models.Model):
    name = models.CharField(max_length=255)
Run Code Online (Sandbox Code Playgroud)

现在,在视图中,我想注释属于项目的所有InformationUnits,所以我这样做:

p = Project.objects.all().annotate(Count('informationunit')
Run Code Online (Sandbox Code Playgroud)

工作得很好另外,我想知道,在每个项目中,有多少不同的"用户名"参与.也就是说,计算组成一个项目的InformationUnits中有多少个不同的"用户名".我尝试了以下方法,但它只计算InformationUnit的数量,无论用户名如何:

p = Project.objects.all().annotate(Count('informationunit__username')
Run Code Online (Sandbox Code Playgroud)

请注意,username不是对象,而是字符串.有没有一个干净的方法来做到这一点,或者我应该基于循环和意大利面条代码创建一个更复杂的代码:P

非常感谢!

python django

51
推荐指数
4
解决办法
3万
查看次数

会话或请求不再存在时,在PostgreSQL中停止(长期)运行SQL查询?

我不知道从哪里开始解决这个问题,但如果我有一个AJAX Web应用程序向服务器发送请求并在数据库上运行长查询(在我的情况下是postgresql),有没有办法停止或终止查询如果仍然在运行,用户刷新页面或关闭会话...等?

sql postgresql

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

创建扩展用户配置文件

我在django中有一个扩展的UserProfile模型:

class UserProfile(models.Model):
  user = models.ForeignKey(User, unique=True)
  #other things in that profile
Run Code Online (Sandbox Code Playgroud)

还有一个signals.py:

from registration.signals import user_registered
from models import UserProfile
from django.contrib.auth.models import User

def createUserProfile(sender, instance, **kwargs):
  profile = users.models.UserProfile()
  profile.setUser(sender)
  profile.save()

user_registered.connect(createUserProfile, sender=User)
Run Code Online (Sandbox Code Playgroud)

我确保信号通过以下方式注册__init__.py:

import signals
Run Code Online (Sandbox Code Playgroud)

那么应该为每个注册的用户创建一个新的UserProfile,对吧?但事实并非如此.我尝试登录时总是得到"UserProfile匹配查询不存在"错误,这意味着数据库条目不存在.

我应该说我使用django-registration,它提供user_registered信号.

重要应用程序的结构是,我有一个名为"users"的应用程序,我有:models.py,signals.py,urls.py和views.py(以及其他一些在这里无关紧要的事情) ).UserProfile类在models.py中定义.

更新:我将signals.py更改为:

from django.db.models.signals import post_save
from models import UserProfile
from django.contrib.auth.models import User

def create_profile(sender, **kw):
    user = kw["instance"]
    if kw["created"]:
        profile = UserProfile()
        profile.user = user
        profile.save()

post_save.connect(create_profile, sender=User)
Run Code Online (Sandbox Code Playgroud)

但现在我得到了"IntegrityError":

"列user_id不是唯一的"

编辑2:

我找到了.看起来我以某种方式注册了两次信号.此处描述了解决方法: …

django django-registration

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

通过intelliJ添加远程git repo

我想知道如何通过intelliJ添加远程git repo,而不是通过git bash.现在,从我在本教程中看到的,它可以完成,但每当我尝试推动时,对话永远不会出现.如果你推到最底层,你可以看到它可以在以前版本的IntelliJ中完成.你怎么能用12版或PyCharm 2.6做到这一点?

git intellij-idea pycharm

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

将请求记录到django-rest-framework

出于调试目的,我想使用Django的日志记录机制来记录每个传入的请求,当它"到达"django-rest-framework的门口时.

Djagno以下列方式提供其请求的记录(仅"警告"日志级别及以上)(来自settings.py中的LOGGING部分):

'django.request': {
        'handlers': ['mail_admins'],
        'level': 'ERROR',
        'propagate': False,
 },
Run Code Online (Sandbox Code Playgroud)

我想要实现这样的事情(注意:日志级别是DEBUG):

'rest_framework.request': {
        'handlers': ['logfile'],
        'level': 'DEBUG',
        'propagate': False,
 },
Run Code Online (Sandbox Code Playgroud)

有没有办法在将记录器嵌入DRF的源代码的情况下做到这一点?
DRF中是否有某种"Logging Backend"选项我不知道?

python django django-rest-framework

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

如何对Raphael生成的SVG进行工具提示

我正在做一些教学练习,用XSLT,Javascript和Raphael将XML转换为SVG.我确信这是艰难的方式......但它具有教育意义.

我遇到的问题是创建工具提示.到目前为止,我已经找到了三种方法:

  1. 第一种方法是.attr({title: "blah"{)在对象上使用.这是有效的,但拉斐尔并没有正式支持它,我想在工具提示中加入的内容可能有点长,这是人们操作系统在人们读完之前超出工具提示的问题.
  2. 我找到的第二种方法就是这里的功能.当有鼠标悬停时,它可以正常弹出拉斐尔对象,但是,据我所知,获得一个看起来很正常的工具提示是不可能的.
  3. 使用jquery Tooltip插件.这似乎不起作用.我无法让Raphael将title属性添加到对象中并获取此选项以选择该标题.不知道为什么.

所以,我想知道的是,向Raphael对象添加工具提示是一种简单可靠的方法,以便当人们鼠标悬停在对象上时弹出工具提示,并在鼠标输出时(但不是之前)消失?

jquery svg tooltip raphael

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