سلام بر آقای اردوخانی عزیز
سلام بر رفقا
وقتی در فرم ها، مثلا برای خطای required ، مقدار " نام و نام خانوادگی الزامی است " را در نظر میگیرم، تغییری در پژوژه ام ایجاد نمیشود و همان پیغام انگلیسی پیش فرض، یعنی "Please fill out this field" را نمایش میدهد.
حتی با پاک کردن attribute required در تگ html که با inspect، مشکل برطرف نمیشود و پیغامی که من تنظیم کرده ام را نمایش نمیدهد.
حتی با در نظر گرفتن 'fa-IR' برای LANGUAGE_CODE در فایل setting، مشکل حل نمیشود.
سلام خدمت شما دوست عزیز
کد مربوط به فرم و view و html رو ارسال کنید دوست من
#forms.py
from cProfile import label
from dataclasses import fields
from tkinter import Widget
from django import forms
from .models import CantactUs
class ContactUsForm(forms.Form):
full_name = forms.CharField(
label='نام و نام خانوادگی',
max_length=50,
error_messages={
'required': 'لطفا نام و نام خانوادگی خود را وارد نمایید',
'max_length': 'نام و نام خانوادگی از حد مجاز بالاتر است'
},
widget=forms.TextInput(attrs={
'class' : 'form-control',
'placeholder' : 'نام و نام خانوادگی'
}))
email = forms.EmailField(
label='ایمیل',
widget=forms.EmailInput(attrs={
'class' : 'form-control',
'placeholder' : 'ایمیل'
}
))
title = forms.CharField(
label='عنوان',
widget=forms.TextInput(attrs={
'class' : 'form-control',
'placeholder' : 'موضوع'
}))
message = forms.CharField(
label = 'متن پیام',
widget=forms.Textarea(attrs={
'class' : 'form-control',
'id' : 'message',
'placeholder' : 'پیغام شما',
'rows' : '5',
'cols' : '40'
}))
class ContactUsModelForm(forms.ModelForm):
class Meta:
model = CantactUs
fields = ['full_name', 'title', 'email', 'message']
widgets = {
'full_name' :forms.TextInput(attrs={
'class' : 'form-control',
'placeholder' : 'نام و نام خانوادگی'
}),
'title' :forms.TextInput(attrs={
'class' : 'form-control',
'placeholder' : 'عنوان'
}),
'email' :forms.EmailInput(attrs={
'class' : 'form-control',
'placeholder' : 'ایمیل'
}),
'message' :forms.Textarea(attrs={
'class' : 'form-control',
'placeholder' : 'متن پیام',
'rows' : '5',
'id' : 'message'
})
}
error_messages = {
'full_name' : {
'required' : 'لطفا نام و نام خانوادگی را وارد نمایید. الزامیست'
}
}
#views.py
from multiprocessing import context
from django.urls import reverse
from urllib import request
from django.shortcuts import redirect, render
from .forms import ContactUsForm, ContactUsModelForm
from .models import CantactUs
# Create your views here.
def contact_us(request):
if request.method == 'POST':
# contact_form = ContactUsForm(request.POST)
contact_form = ContactUsModelForm(request.POST)
if contact_form.is_valid():
contact = CantactUs(
title = contact_form.cleaned_data.get('title'),
full_name = contact_form.cleaned_data.get('full_name'),
email = contact_form.cleaned_data.get('email'),
message = contact_form.cleaned_data.get('message')
)
contact.save()
return redirect('home_page')
# contact_form = ContactUsForm()
contact_form = ContactUsModelForm()
context = {
'contact_form' : contact_form
}
return render(request, 'contact_module/contact_us.html', context)#contact_us.html
{% extends 'shared/_layout.html' %}
{% block title %}ocntact-us page{% endblock title %}
{% block content %}
<div id="contact-page" class="container">
<div class="bg">
<div class="row">
<div class="col-sm-8">
<div class="contact-form">
<h2 class="title text-center">با ما در ارتباط باشیـد</h2>
<div class="status alert alert-success" style="display: none"></div>
<form id="main-contact-form" class="contact-form row" name="contact-form" acition="{% url 'contact_us' %}" method="post">
{% csrf_token %}
<div class = "form-group col-md-6" >
{{contact_form.email.label_tag}}
{{contact_form.email}}
{{contact_form.email.errors}}
</div >
<div class = "form-group col-md-6">
{{contact_form.full_name.label_tag}}
{{contact_form.full_name}}
{{contact_form.full_name.errors}}
</div >
<div class = "form-group col-md-12" >
{{contact_form.title.label_tag}}
{{contact_form.title}}
{{contact_form.title.errors}}
</div >
<div class = "form-group col-md-12" >
{{contact_form.message.label_tag}}
{{contact_form.message}}
{{contact_form.message.errors}}
</div >
{% comment %} <div class="form-group col-md-6">
<input type="text" name="fullname" class="form-control" placeholder="نام">
</div>
<div class="form-group col-md-6">
<input type="email" name="email" class="form-control" placeholder="ایمیـل">
</div>
<div class="form-group col-md-12">
<input type="text" name="subject" class="form-control" placeholder="موضـوع">
</div>
<div class="form-group col-md-12">
<textarea name="message" id="message" class="form-control" rows="8" placeholder="پیغـام شمـا"></textarea>
</div> {% endcomment %}
<div class="form-group col-md-12">
{% comment %} <input type="submit" name="submit" class="btn btn-primary pull-right" value="ارسـال"> {% endcomment %}
<button type= "submit" class="btn btn-primary pull-right">ارسال</button>
</div>
</form>
</div>
</div>
<div class="col-sm-4">
<div class="contact-info">
<h2 class="title text-center">اطلاعات تماس</h2>
<address>
<p>گـروه تکنوگـرافی 1614</p>
<p>ایـران - آذربایجـان غربـی - خـوی</p>
<p>مجتـمع تجـاری تفریحـی شمس - طبـقه 2 - پلاک 54</p>
<p>تلفن تماس : 80 21 24 36 044</p>
<p>فکس : 80 21 24 36 044</p>
<p style="font-family: tahoma;">ایمیـل : info@1614GP.ir</p>
</address>
</div>
</div>
</div>
</div>
</div>
{% endblock content %}در قسمت terminal با خطایی مواجه نمیشین هنگام اجرا و ارسال اطلاعات؟
برنامه رو از اول ران کردی و بعد وقتی صفحه بازش شد توی مرورگر کنترل اف پنج زدی؟
سلام استاد اردوخانی
منم متاسفانه به همین مشکل خوردم اگر ممکنه راهنمایی بفرمایید.
این نکته رو در نظر بگیرین دوست من که ما client validation رو پیاده سازی نکردیم و اینکه متن خطا در حالت عادی انگلیسی هستش طبیعیه