Django: как я могу показать содержание сообщения конкретного пользователя - PullRequest
1 голос
/ 08 мая 2020

Привет, я работаю над проектом, в котором пользователь добавил сообщение на сайт, а водитель проверяет его сообщение и дает ему предложение (цену) на доставку груза. Когда водитель отправляет сообщение (цена) .... в Уровень администратора выбранной публикации и того, какой драйвер добавляет цену, работает правильно, однако, когда тот же пользователь вошел в систему (который добавил публикацию ранее) и хочет увидеть цену своего пост-предложения от определенного водителя. так как я могу показать фронтенду с фильтрацией конкретного пользователя?

это моя модель поста пользователя

class Loader_post(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE ,related_name="Loader")
    pick_up_station = models.CharField(max_length=150)
    destination_station = models.CharField(max_length=150)
    sender_name = models.CharField(max_length=150)
    phone_number = PhoneNumberField(null=False, blank=False, unique=True)
    receiver_name = models.CharField(max_length=150)


def __str__(self):
     return self.user.username

def get_absolute_url(self):
    return reverse("Loader:my_job", kwargs={"pk": self.pk})

вот цена, добавленная к посту

class price(models.Model):
    my_post = models.ForeignKey(Loader_post, related_name='prices',on_delete=models.CASCADE, 
     null=True, default='')
    user = models.ForeignKey(get_user_model(), on_delete=models.CASCADE,  null=True, default='')
    driver_price = models.CharField(max_length=150, null=True)
    driver_name = models.CharField(max_length=150, null=True)
    approved_price = models.BooleanField(default=False)
    status = models.BooleanField(default=False)

def get_absolute_url(self):
    return reverse("Driver:Driverview")

def __str__(self):
    return self.driver_price

это вид сообщения пользователя (views.py)

class Loader_post_view(CreateView, LoginRequiredMixin):
    form_class = forms.Loader_post_form
    model = Loader_post
    template_name = "post_detail.html"
    success_url = reverse_lazy("Loader:my_job")



def form_valid(self, form):
    print(form.cleaned_data)
    self.object = form.save(commit=False)
    self.object.user = self.request.user
    self.object.save()
    return super().form_valid(form)

и вид добавленной цены за конкретный пост

@login_required
 def add_price_to_post(request, pk):
     post = get_object_or_404(Loader_post, pk=pk)
     user = request.user
     if request.method == "POST":
        form = price_form(request.POST)
        if form.is_valid():
        ps = form.save(commit=False)
        ps.user = request.user
        ps.status = True
        ps.save()
        ps.my_post.add(post)
        return redirect('Driver:Driverview')
    else:
        form = price_form()
return render(request, 'price_form.html', {'form': form})

теперь, как я могу показать во внешнем интерфейсе конкретного зарегистрированного пользователя, добавленную к сообщению цену

driver logged side where driver add price to the post

add price

admin level

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...