是否允许HTTP标头允许的最大允许大小?如果是这样,它是什么?如果没有,这是特定于服务器的东西,还是允许任何大小的标题的公认标准?
有没有时,你应该实现一个python约定__str__()
对__unicode__()
.我已经看到类的覆盖__unicode__()
频率高于__str__()
它但看起来并不一致.当一个与另一个相比更好的时候是否有特定的规则?是否有必要/良好做法同时实施?
我和一些同事正在讨论这个问题.当你期望只有一个对象时,有没有一种首选的方法来检索Django中的对象?
两个明显的方法是:
try:
obj = MyModel.objects.get(id=1)
except MyModel.DoesNotExist:
# We have no object! Do something...
pass
Run Code Online (Sandbox Code Playgroud)
和
objs = MyModel.objects.filter(id=1)
if len(objs) == 1:
obj = objs[0]
else:
# We have no object! Do something...
pass
Run Code Online (Sandbox Code Playgroud)
第一种方法似乎在行为上更正确,但在控制流中使用异常可能会引入一些开销.第二个更环形,但不会引发异常.
关于哪一个更好的想法?哪个更有效率?
我收到了很多499 nginx错误代码.我看到这是客户端问题.这不是Nginx或我的uWSGI堆栈的问题.我注意到当获得499时uWSGI日志中的相关性.
address space usage: 383692800 bytes/365MB} {rss usage: 167038976
bytes/159MB} [pid: 16614|app: 0|req: 74184/222373] 74.125.191.16 ()
{36 vars in 481 bytes} [Fri Oct 19 10:07:07 2012] POST /bidder/ =>
generated 0 bytes in 8 msecs (HTTP/1.1 200) 1 headers in 59 bytes (1
switches on core 1760)
SIGPIPE: writing to a closed pipe/socket/fd (probably the client
disconnected) on request /bidder/ (ip 74.125.xxx.xxx) !!!
Fri Oct 19 10:07:07 2012 - write(): Broken pipe [proto/uwsgi.c line
143] during POST /bidder/ (74.125.xxx.xxx) …
Run Code Online (Sandbox Code Playgroud) 我有一个与内置模块冲突的模块.例如,在中myapp.email
定义的模块myapp/email.py
.
我可以myapp.email
在我的代码中的任何地方引用而没有问 但是,我需要从我的电子邮件模块中引用内置电子邮件模块.
# myapp/email.py
from email import message_from_string
Run Code Online (Sandbox Code Playgroud)
它只发现自己,因此提出了一个ImportError
,因为myapp.email
没有message_from_string
方法. import email
我尝试时会导致同样的问题email.message_from_string
.
有没有本地支持在Python中执行此操作,或者我是否仍然将我的"电子邮件"模块重命名为更具体的内容?
我试图根据一些信息预先填充我的django表单中的数据,但不使用ModelForm,所以我不能只设置实例.
这似乎应该很容易,但由于某种原因,我找不到任何文件告诉我如何做到这一点.这是我的表格:
class MyForm(forms.Form):
charfield1 = forms.CharField(max_length=3)
charfield2 = forms.CharField(max_length=3)
choicefield = forms.ModelChoiceField(MyModel.objects.all())
Run Code Online (Sandbox Code Playgroud)
我试过这样做:
form = MyForm()
form.charfield1 = "foo"
form.charfield2 = "bar"
# a model choice field
form.choicefield = MyModel.objects.get(id=3)
Run Code Online (Sandbox Code Playgroud)
这不起作用.
我正在使用Celery来管理异步任务.然而,偶尔芹菜过程会失效,导致任何任务都无法执行.我希望能够检查芹菜的状态并确保一切正常,如果我发现任何问题,则向用户显示错误消息.从Celery Worker文档看起来我可能能够使用ping或者检查这个,但ping感觉很乱,并且不清楚究竟如何使用inspect(如果inspect().registered()是空的?).
任何有关这方面的指导将不胜感激.基本上我正在寻找的方法是这样的:
def celery_is_alive():
from celery.task.control import inspect
return bool(inspect().registered()) # is this right??
Run Code Online (Sandbox Code Playgroud)
编辑:它看起来甚至不像celery 2.3.3上的registered()(即使2.1文档列出它).也许ping是正确的答案.
编辑:Ping似乎也没有做我认为会做的事情,所以仍然不确定这里的答案.
我正在寻找一种在单个C#/ .NET标签中显示多种颜色的方法.例如,标签显示一系列csv分隔值,每个值取决于它们落入的桶中的颜色.我宁愿不使用多个标签,因为值是可变长度,我不想使用动态布局.是否有本机支持?
有没有一种不错的方法在C#中声明一个长单行字符串,这样在编辑器中声明和/或查看字符串并非不可能?
我知道的选项是:
1:让它运行.这很糟糕,因为你的字符串走到了屏幕右侧,让开发人员阅读消息时不得不烦人滚动和阅读.
string s = "this is my really long string. this is my really long string. this is my really long string. this is my really long string. this is my really long string. this is my really long string. this is my really long string. this is my really long string. ";
Run Code Online (Sandbox Code Playgroud)
2:@ +换行.这在代码中看起来不错,但是为字符串引入了换行符.此外,如果您希望它在代码中看起来不错,不仅会获得换行符,而且还会在字符串的每一行的开头处获得尴尬的空格.
string s = @"this is my really long string. this is my long string.
this line will be indented way too much in …
Run Code Online (Sandbox Code Playgroud) 在svn中,您可以将存储库链接到另一个svn存储库中的任何文件夹.我想知道git是否有类似的功能?基本上我想在我的存储库中有一个git子模块,但我希望子模块是指向另一个git存储库的子文件夹的指针,而不是整个存储库.这可能吗?
django ×3
python ×3
c# ×2
http-headers ×2
string ×2
.net ×1
celery ×1
coding-style ×1
colors ×1
conventions ×1
django-forms ×1
dvcs ×1
git ×1
http ×1
label ×1
nginx ×1
unicode ×1
uwsgi ×1