小编Joh*_*ohn的帖子

如何创建对象并向其添加属性?

我想在Python中创建一个动态对象(在另一个对象内),然后为其添加属性.

我试过了:

obj = someobject
obj.a = object()
setattr(obj.a, 'somefield', 'somevalue')
Run Code Online (Sandbox Code Playgroud)

但这没用.

有任何想法吗?

编辑:

我从for循环中设置属性,循环遍历值列表,例如

params = ['attr1', 'attr2', 'attr3']
obj = someobject
obj.a = object()

for p in params:
   obj.a.p # where p comes from for loop variable
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,我会得到obj.a.attr1,obj.a.attr2,obj.a.attr3.

我使用了这个setattr函数因为我不知道怎么做obj.a.NAME一个for循环.

如何根据p上面示例中的值设置属性?

python attributes class object

279
推荐指数
9
解决办法
30万
查看次数

jquery停止孩子触发父事件

我有一个div,我附上了一个onclick事件.在这个div中有一个带链接的标签.当我点击链接时,onclick也会触发div中的事件.如何禁用此功能,以便在单击链接时onclick不会触发div ?

脚本:

$(document).ready(function(){
    $(".header").bind("click", function(){
         $(this).children(".children").toggle();
    });
})
Run Code Online (Sandbox Code Playgroud)

HTML代码:

<div class="header">
    <a href="link.html">some link</a>
    <ul class="children">
        <li>some list</li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

jquery

197
推荐指数
4
解决办法
16万
查看次数

Django更新对象

如何在同一个查询集上运行update和select语句,而不是必须执行两个查询,一个用于选择对象,另一个用于更新对象?

SQL中的等价物如下:

update my_table set field_1 = 'some value' where pk_field = some_value
Run Code Online (Sandbox Code Playgroud)

sql django orm django-models django-queryset

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

django - manytomany上的查询过滤器为空

在Django中有一种方法可以过滤多个字段为空或空.

class TestModel(models.Model):
    name = models.CharField(_('set name'), max_length=200)
    manytomany = models.ManyToManyField('AnotherModel', blank=True, null=True)

print TestModel.objects.filter(manytomany__is_null=True)
Run Code Online (Sandbox Code Playgroud)

django django-queryset

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

django filefield仅在模板中返回文件名

我在我的FileField类型的模型中有一个字段.这给了我一个类型为File的对象,它有以下方法:

File.name:文件名,包括MEDIA_ROOT的相对路径.

我想要的是类似.filename的东西,它只会给我文件名,而不是路径

就像是:

{% for download in downloads %}
  <div class="download">
    <div class="title">{{download.file.filename}}</div>
  </div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

这将给出类似myfile.jpg的东西

谢谢

django django-templates django-file-upload

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

如何获取Django request.POST中所有选中复选框的值?

嗨,我有一系列的复选框,例如

<input type="checkbox" name="checks[]" value="1" />
<input type="checkbox" name="checks[]" value="2" />
<input type="checkbox" name="checks[]" value="3" />
<input type="checkbox" name="checks[]" value="4" />
Run Code Online (Sandbox Code Playgroud)

如果选择了多个,我如何在view.py中访问它们?

我试过了

request.POST['checks']
Run Code Online (Sandbox Code Playgroud)

但那只能给我最后一个价值.我想要的是所有已在列表中选择的那些,例如1,3,4

谢谢

django django-forms

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

将另一个元组添加到元组元组中

我有以下元组元组:

my_choices=(
         ('1','first choice'),
         ('2','second choice'),
         ('3','third choice')
)
Run Code Online (Sandbox Code Playgroud)

我想在它的开头添加另一个元组

another_choice = ('0', 'zero choice')
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

结果将是:

final_choices=(
             ('0', 'zero choice')
             ('1','first choice'),
             ('2','second choice'),
             ('3','third choice')
    )
Run Code Online (Sandbox Code Playgroud)

python tuples

52
推荐指数
3
解决办法
6万
查看次数

SQLAlchemy 0.5.8 Max函数

使用SQLAlchemy 0.5.8如何运行最大查询?

Select max(id) from some_table

sqlalchemy

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

数字嵌套HTML中的有序列表

我有一个嵌套的有序列表.

<ol>
  <li>first</li>
  <li>second
  <ol>
    <li>second nested first element</li>
    <li>second nested secondelement</li>
    <li>second nested thirdelement</li>
  </ol>
  </li>
  <li>third</li>
  <li>fourth</li>
</ol>
Run Code Online (Sandbox Code Playgroud)

目前,嵌套元素再次从1开始,例如

  1. 第一
  2. 第二
    1. 第二个嵌套的第一个元素
    2. 第二个嵌套的第二个元素
    3. 第二个嵌套的第三个元素
  3. 第三
  4. 第四

我想要的是第二个元素编号如下:

  1. 第一
  2. 第二

    2.1.第二个嵌套的第一个元素

    2.2.第二个嵌套的第二个元素

    2.3.第二个嵌套的第三个元素

  3. 第三
  4. 第四

有办法做到这一点吗?

html css jquery html-lists

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

python从列表中删除重复的字典

我有一个词典列表

l = [
{'firstname': 'joe', 'surname': 'bloggs'},
{'firstname': 'john', 'surname': 'smith'},
{'firstname': 'joe', 'surname': 'bloggs'},
{'firstname': 'jane', 'surname': 'bloggs'}
]
Run Code Online (Sandbox Code Playgroud)

我如何删除重复,即{'firstname': 'joe', 'surname': 'bloggs'}出现两次所以会希望它只出现一次?

python

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