سلام
من یک مدل فرم دارم که باهاش title و text رو از کاربر درخواست کردم
حالا وقتی میاد تو صفحه html مقدار پیشفرض برای input میزاره
البته فقط برای title ، اتربیوت value رو با مقدار "بدون نام" فعال میکنه ، تو فایل فرم هم خیلی کار ها کردم ، مقدار value رو دوباره هم بهش داد ولی بازم به صورت پیشفرض بدون نام رو خودش تو title میزاره
سلام دوست من
لطفا کدهای فایل views و forms و همینطور html رو ارسال کنین
کدهای فایل forms
class CommentsForm(forms.ModelForm):
class Meta:
model = Comment_l
fields = ['title', 'text']
widgets = {
'title' : forms.TextInput(attrs={
'class' : 'form',
'placeholder' : 'عنوان',
}),
'text' : forms.Textarea(attrs={
'class' : 'form',
'placeholder' : 'نظر خود را بنویسید'
})
}
labels = {
'title' : 'عنوان نظر خود را وارد کنید',
'text' : 'متن نظر خود را وارد کنید'
}
کدهای views
lass LearningCommentsForm(FormView):
template_name = 'home/comments_form.html'
form_class = CommentsForm
success_url = f'/learning/'
def get_success_url(self):
slug = self.kwargs['slug']
self.success_url = f'/Learning/{slug}'
return self.success_url
def get_context_data(self, **kwargs):
context = super(LearningCommentsForm, self).get_context_data(**kwargs)
context['title'] = Learning.objects.get(page_name=self.kwargs['slug']).title
context['slug'] = self.kwargs['slug']
return context
def form_valid(self, form):
Comment_l = form.save(commit=False)
Comment_l.post = Learning.objects.get(page_name=self.kwargs['slug'])
Comment_l.save()
return super().form_valid(form)
کدهای html
{% load static %}<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>comment form</title>
<link rel="stylesheet" href="{% static 'home/comments/style.css' %}">
</head>
<body>
<header>
<h1>نظرات خود را با ما در میان بگلذارید</h1>
<h1 style="border-bottom-left-radius: 100px;border-bottom-right-radius: 100px">نظر شما در باره مقاله{{ title }}</h1>
</header>
<form action="{% url 'learning_comment' slug=slug %}" method="post">
{% csrf_token %}
{{ form.title.label_tag }}<br>
{{ form.title }}<br>
{{ form.title.errors }}<br>
<br>
{{ form.text.label_tag }}<br>
{{ form.text }}<br>
{{ form.text.errors }}<br>
<button type="submit" id="submit">
ثبت
</button>
</form>
</body>
</html>
احساس میکنم مشکل از context باشه
لطفا نام مقداری که در contexy ارسال کردین رو از title تغییر بدین و از نام دیگه ای استفاده کنین
احتمالا تشابه اسمی باعث این مشکل شده باشه