Я не смог сохранить свои данные в админке. Он просто перенаправляет меня на главную страницу.
- Вот мой код View.py. слышу, что он перенаправляет меня на главную страницу и не сохраняет мои данные в панели администратора. **если я отступлю назад else condition
Блочная цитата
else: form = OrderForm() return redirect('home')
Блочная цитата
выдает ошибку - ValueError at /orders/place_order/ Представление orders.views.place_order не вернуло объект HttpResponse. Вместо этого оно вернуло None.**
def place_order(request, total=0, quantity=0,):
current_user = request.user
# if cart count is less then 0 or equel to 0, then redirect to shop
cart_items = CartItem.objects.filter(user=current_user)
cart_count = cart_items.count()
if cart_count <= 0:
return redirect('store')
grand_total = 0
tax = 0
for cart_item in cart_items:
total += (cart_item.product.price*cart_item.quantity)
quantity += cart_item.quantity
tax = (12 * total)/100
grand_total = total + tax
if request.method == 'POST':
form = OrderForm(request.POST)
if form.is_valid():
# store all the information inside belling table
data = Order()
data.user = current_user
data.first_name = form.cleaned_data['first_name']
data.last_name = form.cleaned_data['last_name']
data.phone = form.cleaned_data['phone']
data.email = form.cleaned_data['email']
data.address_line_1 = form.cleaned_data['address_line_1']
data.address_line_2 = form.cleaned_data['address_line_2']
data.country = form.cleaned_data['country']
data.provence = form.cleaned_data['provence']
data.zone = form.cleaned_data['zone']
data.district = form.cleaned_data['district']
data.order_note = form.cleaned_data['order_note']
data.order_total = grand_total
data.tax = tax
data.ip = request.META.get('REMOTE_ADDR')
data.save()
# genarate order no
yr = int(datetime.date.today().strftime('%y'))
dt = int(datetime.date.today().strftime('%d'))
mt = int(datetime.date.today().strftime('%m'))
d = datetime.date(yr,mt,dt)
current_date = d.strftime("%y%m%d")
order_number = current_date + str(data.id)
data.order_number = order_number
data.save()
return redirect('checkout')
# return redirect('store')
else:
form = OrderForm()
return redirect('home')
Главное - это мой код Form.py.
class OrderForm(forms.ModelForm):
class Meta:
model = Order
fields = ['first_name', 'last_name', 'phone', 'email', 'address_line_1', 'address_line_2', 'country', 'provence', 'zone', 'district','order_note']