Django ORM:对象不可迭代(错误)
Django ORM: Object is not iterable (Error)
谁能解释为什么这是可迭代的:
User.objects.all()
这是有效的并给了我一个值(当前用户的别名。会话正在存储用户 ID):
User.objects.get(id = request.session['currentuser']).alias)
但这给我的错误是 'not iterable?':
Poke.objects.get(user = User.objects.get(id = request.session['currentuser']).alias)
(此代码应该获取用户列与当前用户别名匹配的 Poke 条目列表。)
这是 Poke 模型。它不使用外键,因为我无法正确设置其中两个。
class Poke(models.Model):
id = models.IntegerField(primary_key=True)
user = models.CharField(max_length=100)
poker = models.CharField(max_length=100)
pokes = models.IntegerField()
class Meta:
app_label = "poke_app"
你 print(request.session['currentuser'])
时看到的是整数值吗?
如果你会看到一个字符串,那么你应该给出一个整数值
例如:userobj = User.objects.get(id=uid)
哦对不起
User.objects.get(id = request.session['currentuser']).alias)
您打开 (
并在 ['currentuser'])
之后关闭它,但为什么您在 .alias 之后再次关闭 )
?
Get 将检索单个对象,因此结果将不可迭代。参见 documentation。
谁能解释为什么这是可迭代的:
User.objects.all()
这是有效的并给了我一个值(当前用户的别名。会话正在存储用户 ID):
User.objects.get(id = request.session['currentuser']).alias)
但这给我的错误是 'not iterable?':
Poke.objects.get(user = User.objects.get(id = request.session['currentuser']).alias)
(此代码应该获取用户列与当前用户别名匹配的 Poke 条目列表。)
这是 Poke 模型。它不使用外键,因为我无法正确设置其中两个。
class Poke(models.Model):
id = models.IntegerField(primary_key=True)
user = models.CharField(max_length=100)
poker = models.CharField(max_length=100)
pokes = models.IntegerField()
class Meta:
app_label = "poke_app"
你 print(request.session['currentuser'])
时看到的是整数值吗?
如果你会看到一个字符串,那么你应该给出一个整数值
例如:userobj = User.objects.get(id=uid)
哦对不起
User.objects.get(id = request.session['currentuser']).alias)
您打开 (
并在 ['currentuser'])
之后关闭它,但为什么您在 .alias 之后再次关闭 )
?
Get 将检索单个对象,因此结果将不可迭代。参见 documentation。