小编Jas*_*nTS的帖子

是否有可能在多个级别上prefetch_related?

我只是想知道我是否有三个型号:

class A(models.Model:
  b = models.ForeignKeyField('B')
class B(models.Model):
  c = models.ForeignKeyField('C')
class C(models.Model):
  user = models.ForeignKeyField('auth.User')
Run Code Online (Sandbox Code Playgroud)

我在A的列表视图中:

foo = A.objects.all().prefetch_related('B')
Run Code Online (Sandbox Code Playgroud)

有没有办法让它预取C(然后'auth.User')?

我正在使用Django 1.7

谢谢你的帮助!

django django-models django-queryset django-1.7

4
推荐指数
1
解决办法
1774
查看次数

如何将唯一性与冲突数据一起引入?

我为我的网站编写了一个 qna 脚本,为了防止用户开始讨论,我希望每个用户只能回复一次。

class Q(models.Model):
  text = models.TextField()
  user = models.ForeignKeyField('auth.User')

class A(models.Model):
  text = models.TextField()
  user = models.ForeignKeyField('auth.User')
  q = models.ForeignKeyField('Q')
  class Meta:
    unique_together = (('user','q'),)
Run Code Online (Sandbox Code Playgroud)

现在迁移给了我:

return Database.Cursor.execute(self, query, params)
  django.db.utils.IntegrityError: columns user_id, q_id are not unique
Run Code Online (Sandbox Code Playgroud)

当然,独特之处与现有数据发生冲突。我现在需要知道的是如何告诉迁移删除冲突的答案。一个愚蠢的解决方案,比如保留第一个找到的解决方案已经是一个很大的帮助。更好的是通过自定义函数比较冲突的 A 的方法。

我正在使用新的迁移系统运行 Django-1.7 - 而不是 South。

谢谢你的帮助!

django django-database django-1.7 django-migrations

4
推荐指数
1
解决办法
900
查看次数

如何将OneToOneField设置为null?

我有一个可能为null的OneToOneField模型:

solution_for = models.OneToOneField('QNAQuestion', related_name='solution', blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

有时它有一个值需要在视图中删除.null它的语法是什么?这是一个非常简单的问题,但谷歌并没有真正帮助.

我已经尝试过:

obj.solution_for = None
obj.solution_for = False
obj.solution_for = ''
del obj.solution_for
Run Code Online (Sandbox Code Playgroud)

但我想我必须放弃..这样做的正确方法是什么?

django django-models django-queryset django-related-manager django-1.7

4
推荐指数
1
解决办法
5549
查看次数

如何在Django中禁用默认翻译值?

有些标签在不设置*.po文件的情况下为我翻译了单词.

{% trans "groups" %}
{% trans "users" %}
Run Code Online (Sandbox Code Playgroud)

不幸的是,在创建*.po文件并运行时,它们不会被覆盖:

django-admin.py compilemessages
Run Code Online (Sandbox Code Playgroud)

那么如何摆脱默认翻译呢?我更喜欢项目级别的解决方案,因为我不想修改Django核心文件.

django translation internationalization

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

如何在python中获得路径的左侧部分?

如何获得python中相对路径的最左边部分?

我从这样的事情开始:

/var/tmp/workdir/1/foo/bar/test.jpg
Run Code Online (Sandbox Code Playgroud)

然后我删除了其中的一些以获得:

1/foo/bar/test.jpg
Run Code Online (Sandbox Code Playgroud)

使用:

rel_path = os.path.relpath(path,base_dir)
Run Code Online (Sandbox Code Playgroud)

现在我怎样才能得到最左边的部分——“1”?

我只能找到从右侧开始的工具,但在这种情况下,我想要最左边的东西,因为它与用户 ID 对应。我也想避免从右边走,因为可能有更多的子目录。

python path

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

这种比较意味着什么?

我刚刚在脚本中阅读以下行:

fn = (len(sys.argv) > 2 and [sys.argv[2]] or ['test_out.jpg'])[0]
Run Code Online (Sandbox Code Playgroud)

I don't really get what's going on here. So there is a comparison of the number of arguments with 2 and then an or statement. What is the author doing with this and is it a good coding style?

python

2
推荐指数
1
解决办法
93
查看次数

如何为绑定表单设置默认变量?

我试过了:

form = JournalForm(initial={'tank': 123})
Run Code Online (Sandbox Code Playgroud)

但正如文档所述,它不适用于绑定表单.如何使用绑定表单中的默认值填充输入字段?这些值也应该是可变的.

我的情况我想创建一个允许用户更改其电子邮件地址的表单.当前的电子邮件地址应该在输入字段中.

python forms django

1
推荐指数
1
解决办法
59
查看次数

在jquery中检测到textarea的自动更改?

我做了一个小的实时预览,检测a中的keyup textarea然后生成预览.

$('#main-form-subject').children("input").on("change keyup input",function() {
    update_preview(preview_id,subject_id,body_id); 
});
Run Code Online (Sandbox Code Playgroud)

现在我也有按钮可以自动插入图片网址等内容textarea.这显然不会被抓住keyup.但也change没有做到这一点.如何检测文本字段值的这些自动更改?

javascript jquery

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