【问题标题】:Django - accessing foreignkey's attributeDjango - 访问外键的属性
【发布时间】:2014-03-28 14:11:48
【问题描述】:

我正在使用 Django 通用用户模型,并且还添加了这个附加模型:

class UserImages(models.Model):
    user = models.ForeignKey(User)
    photo = models.ImageField(upload_to=get_file_path)

现在,我有一个用户名是

testUser

我想访问 testUser 并查看所有照片的 testUser 有什么并删除 testUser 的所有照片。我想在 python shell 中执行此操作。我正在考虑做这样的事情:

python manage.py shell

from app.models import UserImages
a = UserImages(user=testUser)
a.photo.all.delete()

但是当我尝试这样做时

a = UserImages(user=testUser)

或

a = UserImages(user__username=testUser)

它给出了一个错误提示

name 'testUser' is not defined

。如何让变量 'a' 成为 testUser 对象?

【问题讨论】:

    标签: python django django-models django-queryset


    【解决方案1】:

    你需要得到auth.User对象:

    >>> from django.contrib.auth.models import User
    >>> testUser = User.objects.get(username='testUser')
    >>> from app.models import UserImages
    >>> a = UserImages(user=testUser)
    

    或者在查询UserImages时传入一个字符串:

    >>> a = UserImages(user__username='testUser')
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-20
    • 2016-03-13
    • 2023-03-23
    • 2010-12-31
    • 2017-02-04
    • 2015-04-25
    • 1970-01-01
    • 2020-09-29
    相关资源
    最近更新 更多