这一切都在标题中.以下是以下示例:
class A(object):
my_var = 5
def my_method(self, drink='beer'):
return 'I like %s' % drink
@property
def my_property(self):
return 'I do not drink coffee'
Run Code Online (Sandbox Code Playgroud)
我实例化一个A对象,我想知道每个属性的类型,以及它是否可调用.为此,我正在使用dir().
obj = A()
for attr in dir(obj):
print 'Type: %s' % type(obj)
print 'Is callable: %s' % callable(attr)
Run Code Online (Sandbox Code Playgroud)
我还必须知道属性是否属性.我确信有办法知道这一点.所有建议将不胜感激.
作为javascript的初学者,我正在寻找一种在javascript弹出窗口中从django渲染模板的方式.谢谢.
我正在使用 Alembic 作为迁移工具,并且我正在一个已经更新的数据库上启动以下伪脚本(Alembic 没有修订条目,数据库架构是最新的)。
revision = '1067fd2d11c8'
down_revision = None
from alembic import op
import sqlalchemy as sa
def upgrade():
op.add_column('box', sa.Column('has_data', sa.Boolean, server_default='0'))
def downgrade():
pass
Run Code Online (Sandbox Code Playgroud)
它只在 PostgreSQL 后面给我以下错误(这对 MySQL 来说都很好):
INFO [alembic.migration] Context impl PostgresqlImpl.
INFO [alembic.migration] Will assume transactional DDL.
INFO [root] (ProgrammingError) ERREUR: la colonne « has_data » de la relation « box » existe déjà
Run Code Online (Sandbox Code Playgroud)
最后一行表示该列has_data已存在。
我想检查该列之前是否存在op.add_column。
好吧,我用 pyOpenSSL 生成一个私钥,如下所示:
from OpenSSL import crypto
k = crypto.PKey()
k.generate_key(crypto.TYPE_RSA, 2048)
print crypto.dump_privatekey(crypto.FILETYPE_PEM, k)
Run Code Online (Sandbox Code Playgroud)
如何从中获取公钥字符串?我仍然没有找到这个库的什么方法。谢谢
我试图在ModelForm中更新ModelMultipleChoiceField的查询集.
BaseWriteForm是一个ModelForm,我的类如下所示:
class MyWriteForm(BaseWriteForm):
"""The form for an authenticated user, to compose a message."""
recipients = forms.ModelMultipleChoiceField(label=_('To'),
widget=forms.SelectMultiple(attrs={'class': 'chzn-select'}),
queryset = User.objects.all())
def __init__(self, users_list, **kw):
self.fields['recipients'].queryset = User.objects.filter(pk__in=users_list)
super(BaseWriteForm, self).__init__(**kw)
class Meta(BaseWriteForm.Meta):
fields = ('recipients', 'subject', 'body')
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我有:'MyWriteForm'对象没有属性'字段'
谢谢 !
我正在寻找一种优雅的方式来按特定内容对象的字段对查询集进行排序。
class MyModel(models.Model):
...
content_type = models.ForeignKey(ContentType)
object_pk = models.TextField('object ID')
content_object = generic.GenericForeignKey('content_type', 'object_pk')
Run Code Online (Sandbox Code Playgroud)
我的内容对象多种多样,但都有一个“计数器”字段
class OtherObject(models.Model):
...
counter = models.PositiveIntegerField(default=0)
...
Run Code Online (Sandbox Code Playgroud)
如果我可以查询所有 MyModel 对象,并按相关对象的计数器值对其进行排序,那就太好了。
谢谢 !
好吧,我有两个脚本.a.py打印b.py脚本的输出,如下所示:
#a.py
from subprocess import Popen, PIPE, STDOUT
p = Popen(['/Users/damian/Desktop/b.py'], shell=False, stdout=PIPE, stderr=STDOUT)
while p.poll() is None:
print p.stdout.readline()
#b.py
#!/usr/bin/env python
import time
while 1:
print 'some output'
#time.sleep(1)
Run Code Online (Sandbox Code Playgroud)
这有效.但是,当我取消注释time.sleep()行时,为什么我的脚本会死锁?
我有一个python web项目,我在我的开发服务器上使用带有pip的virtualenv.一些python包需要编译,所以我应该使用python-dev来进行pip安装.有没有办法在生产中重现我的需求堆栈保持virtualenv,但没有python-dev,因为我正在处理没有开发服务器?
所以我有一个NGINX服务器在Vagrant盒子上用uwsgi监听8080端口.config.vm.forward_port 8080,80对我不起作用.我知道建议在高于2000的端口上转发,但我需要80.这有什么问题吗?
我正在使用vagrant进行开发,但我需要在端口80上使用我的域名从外部进行一些测试.感谢您的帮助.
python ×4
django ×3
alembic ×1
deadlock ×1
django-forms ×1
javascript ×1
nginx ×1
openssl ×1
pip ×1
popen ×1
popup ×1
postgresql ×1
pyopenssl ×1
sqlalchemy ×1
vagrant ×1
virtualenv ×1