استفاده کردن از فرمهای پویا با استفاده از جاوا اسکریپت و AJAX برای ارسال درخواستهای بدون بارگذاری مجدد در جنگو
توضیحات:
برای استفاده از فرمهای پویا و ارسال درخواستهای بدون بارگذاری مجدد صفحه در جنگو، میتوانید از جاوا اسکریپت و AJAX استفاده کنید. در ادامه یک روش ساده برای این کار را شرح میدهم:
- ایجاد فرم در تمپلیت: ابتدا یک فرم ساده HTML را در تمپلیت خود ایجاد کنید. مثلا، میتوانید یک فرم برای ارسال نام و نام خانوادگی کاربر ایجاد کنید.
<form id="myForm">
<input type="text" name="first_name" id="id_first_name">
<input type="text" name="last_name" id="id_last_name">
<button type="submit">Submit</button>
</form>
- ایجاد فایل جاوا اسکریپت: سپس یک فایل جاوا اسکریپت برای ارسال درخواست AJAX برای ذخیره اطلاعات فرم ایجاد کنید. مثلا، میتوانید از کد زیر استفاده کنید:
$(document).ready(function() {
$('#myForm').submit(function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: '/save_data/',
data: {
first_name: $('#id_first_name').val(),
last_name: $('#id_last_name').val(),
csrfmiddlewaretoken: '{{ csrf_token }}'
},
success: function(response) {
alert('Data saved successfully!');
},
error: function(error) {
alert('Error saving data!');
}
});
});
});
- ایجاد ویو برای ذخیره اطلاعات: سپس یک ویو در جنگو برای ذخیره اطلاعات فرم ایجاد کنید. مثلا، میتوانید کد زیر را به فایل
views.py
خود اضافه کنید:
from django.http import JsonResponse
def save_data(request):
if request.method == 'POST':
first_name = request.POST.get('first_name')
last_name = request.POST.get('last_name')
# انجام عملیات ذخیرهسازی اطلاعات
return JsonResponse({'message': 'Data saved successfully!'})
- ایجاد URL برای ویو: در نهایت، یک URL برای ویو ایجاد کنید تا درخواست AJAX به آن ارسال شود. مثلا، میتوانید از کد زیر استفاده کنید:
from django.urls import path
from .views import save_data
urlpatterns = [
path('save_data/', save_data, name='save_data'),
]
با انجام این مراحل، شما یک فرم پویا با استفاده از جاوااسکریپت و AJAX ایجاد کردهاید که اطلاعات وارد شده توسط کاربر را بدون بارگذاری مجدد صفحه به ویو در جنگو ارسال میکند و پس از ذخیرهسازی، پیام موفقیتآمیز به کاربر نمایش داده میشود.
موفق باشید
A.J
پست های مرتبط:
فروشگاه سورسا:
سورسا ، یک خانواده!
شما میتوانید از سورس های آماده به راحتی و با کپی پیست در پروژه خود استفاده بفرمایید
بله! سورسا به عنوان اولین و برترین مرجع سورس کد های آماده، تمامی سورس کد ها در زبان های مختلف را به صورت رایگان در اختیار شما قرار میدهد.
اگر سورس مد نظر شما تفاوتی با سورس فعلی دارد یا اینکه درخواست سورس دیگری را دارید میتوانید با کارشناسان سورسا در ارتباط باشید.
سورسا به عنوان مرجع سورس در تلاش است سورس کد ها و آموزش های تمامی زبان های برنامه نویسی مانند GO C++ Python C PHP SQL JS و… را تحت پوشش قرار داد