from django.db import models
from django.contrib import auth
from django.urls import reverse
from django.contrib.auth.models import User
models.py
class placement(models.Model):
user=models.ForeignKey(User,related_name='placeid', null=True, default=None,on_delete=models.CASCADE)
name=models.CharField(max_length=150, blank=True, null=True)
ad_space=models.CharField(max_length=100, blank=False, null=False)
PID_TYPE = (
('FN','FORMAT_NATIVE'),
('FNB','FORMAT_NATIVE_BANNER'),
('FI','FORMAT_INTERSTITIAL'),
('FB','FORMAT_BANNER'),
('FMR','FORMAT_MEDIUM,RECT'),
('FRV','FORMAT_REWARDED_VIDEO'),
)
format = models.CharField(max_length=3,choices = PID_TYPE,default = 'FN',blank=False, null=False)
pid=models.CharField( max_length=50,default='',blank=False, null=False)
cpm=models.IntegerField(default=0,blank=False, null=False)
ADS_TYPE=(
('FB','FACEBOOK'),
('G','GOOGLE'),
)
source=models.CharField(max_length=2,choices=ADS_TYPE,default='FB',blank=False, null=False)
comments=models.TextField(default='',blank=False, null=False)
objects=models.Manager()
def __str__(self):
return self.name
def get_absolute_url(self):
return reverse("dashapp:disp")
views.py
class createPlace(LoginRequiredMixin,CreateView):
fields=('name','ad_space','format','pid','cpm','source','comments')
model=placement
template_name='createpl.html'
def form_valid(self, form):
form.instance.user = User.objects.get(id = self.request.user.id)
return super(createPlace, self).form_valid(form)
class Idlist(LoginRequiredMixin,ListView):
model=placement
template_name='placement_list.html'
def get_queryset(self):
query_set=super().get_queryset()
return query_set.filter(placement.objects.filter(user=self.request.user))
Теперь Какой запрос я должен сделать в Idlist
классе в Views.py
, чтобы получить только текущие данные, связанные с пользователем. И запрос, который я выполняю в Idlist
, выдаёт мне ошибку как
Exception Type: ValueError
Exception Value: too many values to unpack (expected 2)
Я новичок в этом, и любая помощь будет лучше для меня. Пожалуйста, посмотрите и помогите новичку