小编rum*_*mor的帖子

Django get() 返回了多个

我有这个错误,我该如何解决这个问题?

get() 返回了多个事件——它返回了 2 个!

你们能帮我理解这意味着什么,也许可以提前告诉我将来如何避免这个错误?

模型

class Event (models.Model):
    name = models.CharField(max_length=100)
    date = models.DateField(default='')
    dicript = models.CharField(max_length=50, default='???????? ???????????')
    category = models.ForeignKey(Category,on_delete=models.CASCADE)
    adress = models.TextField(max_length=300)
    user = models.ForeignKey(User,related_name="creator",null=True)
    subs = models.ManyToManyField(User, related_name='subs',blank=True)

    @classmethod
    def make_sub(cls, this_user, sub_event):
        event, created = cls.objects.get_or_create(
            user=this_user
        )
        sub_event.subs.add(this_user)
Run Code Online (Sandbox Code Playgroud)

视图

def cards_detail (request,pk=None):
    # if pk:
    event_detail = Event.objects.get(pk=pk)
    subs = event_detail.subs.count()

    # else:
    #     return CardsView()
    args = {'event_detail':event_detail,'subs':subs}
    return render(request,'events/cards_detail.html',args)


class CardsView (TemplateView):`
    template_name = 'events/cards.html'

    def get (self,request):
        events = …
Run Code Online (Sandbox Code Playgroud)

python django many-to-many

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

标签 统计

django ×1

many-to-many ×1

python ×1