我无法从django导入formset_factory.
这是追溯:
from django.forms import formset_factory
Environment:
Request Method: GET
Request URL: http://localhost:8000/forma/
Django Version: 1.4.1
Python Version: 2.7.3
Installed Applications:
['debug_toolbar',
'django_extensions',
'gunicorn',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'internal',
'internal.customers',
'internal.customers.natural',
'internal.customers.entity',
'internal.farmsteads',
'internal.photos',
'internal.offers',
'internal.orders',
'internal.places',
'internal.statuses',
'internal.extra_information',
'internal.properties',
'internal.calendar',
'internal.newsletters',
'aemdyutils',
'tinymce']
Installed Middleware:
('debug_toolbar.middleware.DebugToolbarMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware')
Traceback:
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
101. request.path_info)
File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py" in resolve
300. sub_match = pattern.resolve(new_path)
File "/usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py" in resolve
209. return ResolverMatch(self.callback, args, kwargs, self.name) …Run Code Online (Sandbox Code Playgroud) 是否可以在Django ORM中使用AS sql语句:
SELECT my_field AS something_shiny WHERE my_condition = 1
如果有可能那么如何?
我们假设我们有一个模型:
class a(models.Model):
users = models.ManyToManyField(User) # django.contrib.auth.models.User
Run Code Online (Sandbox Code Playgroud)
和这些变量:
user = request.user
queryset = a.objects.all()
Run Code Online (Sandbox Code Playgroud)
然后我想从包含用户用户的模型中排除这些记录.我怎样才能做到这一点?
queryset.exclude(...)
Run Code Online (Sandbox Code Playgroud) 我最近发现 Smarty 与 Django 模板引擎不同,它不会自动转义变量,我需要将 |escape 放在模板中的大多数变量旁边。
按照文档,http://www.smarty.net/docsv2/en/variable.default.modifiers.tpl我需要设置默认修饰符,不是吗?
所以,这是我的代码:
$smarty = new Smarty();
$smarty->default_modifiers = array('escape:"htmlall"');
Run Code Online (Sandbox Code Playgroud)
...并且变量仍然不会转义,直到我在它们旁边添加 |escape 。
我究竟做错了什么?
我有一个包含 ContentType 字段的模型。
在任何模型方法中,我都可以将其与字符串进行比较:
self.content_type == "construction" # True if ContentObject points to Construction model.
Run Code Online (Sandbox Code Playgroud)
但是,这样的事情似乎在模板中不起作用。
我尝试的第一件事
{% if object.content_type == "construction" %}
Run Code Online (Sandbox Code Playgroud)
第二:
def __unicode__(self):
return str(self.content_type)
`{% if object == "construction" %}`
Run Code Online (Sandbox Code Playgroud)
它是错误的,但是 {{ object }} 打印construction.
我有一个模型实例,上面有一个布尔字段.我想要实现的是将值从True切换为False,反之亦然.
当然,我可以写:
inst = Model.objects.get(id=1)
inst.boolean_field = not inst.boolean_field
inst.save()
Run Code Online (Sandbox Code Playgroud)
但是有2个查询:一个用于获取,另一个用于更新.
我只想切换值,但以下似乎不起作用:
Model.objects.filter(id=1).update(boolean_field=not F("boolean_field"))
Run Code Online (Sandbox Code Playgroud)
我很确定我做错了什么,或者说这是不可能的.
我写了一个脚本来解析一封电子邮件.从Mac OS X Mail客户端接收信件时它工作正常(到目前为止只测试了这个),但是当字母在其正文部分中包含unicode字母时,我的解析器会失效.
例如,我发送了一条包含内容的消息???.
这是我的脚本部分同时解析正文和附件:
p = FeedParser()
p.feed(msg)
msg = p.close()
attachments = []
body = None
for part in msg.walk():
if part.get_content_type().startswith('multipart/'):
continue
try:
filename = part.get_filename()
except:
# unicode letters in filename, set default name then
filename = 'Mail attachment'
if part.get_content_type() == "text/plain" and not body:
body = part.get_payload(decode=True)
elif filename is not None:
content_type = part.get_content_type()
attachments.append(ContentFile(part.get_payload(decode=True), filename))
if body is None:
body = ''
Run Code Online (Sandbox Code Playgroud)
好吧,我提到它适用于来自OS X Mail的信件,但是使用Gmail信件却没有.
追溯:
回溯(最近一次调用最后一次):文件"/Users/aemdy/virtualenvs/django1.5/lib/python2.7/site-packages/django/core/handlers/base.py",第116行,在get_response response = …
关于Django中的模型命名约定,我有一个非常愚蠢的问题.
想象一个农场,有建筑物,有房间.
农庄 - >建筑物 - >房间
有了Farmstead,没关系,我们称之为Farmstead.下一个:Building或FarmsteadBuilding?BuildingRoom,Room还是FarmsteadBuildingRoom?
我们假设我有以下内容:
class Base(Model):
m2m_1 = ManyToManyField("SomeModel1")
m2m_2 = ManyToManyField("SomeModel2")
class Meta:
abstract = True
class A(Base):
def __init__(self):
super(A, self).__init__()
pass
class B(Base):
def __init__(self):
super(B, self).__init__()
pass
Run Code Online (Sandbox Code Playgroud)
但是,我不能这样做,因为它需要M2M字段的相关名称.但是,这并没有帮助,因为模型是抽象的,并且django尝试为A和B模型创建相同的相关名称.
任何想法如何分别指定每个模型的相关名称,甚至根本不使用它们?
我怎样才能做到这一点
request.session['key'] = 'value'
Run Code Online (Sandbox Code Playgroud)
对于user_id为47的用户?
请记住,我目前没有使用该用户登录,我想在shell中执行此操作.