Не перенаправлять после отправки Django форм - PullRequest
0 голосов
/ 02 апреля 2020

привет, дорогой всем гениальным Django Эксперт. я новичок в django. У меня проблема с отправкой формы. моя форма не перенаправляется после нажатия кнопки Отправить. моя проблема ниже

<h1> this is views.py page <h1>

from django.shortcuts import render, redirect
from crud.models import Userlist
from crud.forms import UserListForm
# Create your views here.
def addforms(request):
    if request.method == "POST":
        form = UserListForm(request.POST)
        if form.is_valid():
            try:
                form.save()
                return redirect()
            except:
                pass
    else:
        form = UserListForm()
    return render(request, 'crud/index.html', {'form': form})
def show(request):
    user9 = Userlist.objects.all()
    return render(request, 'crud/show.html', {'user': user9})
def index(request):
    return render(request, 'crud/index.html')

я добавляю туда свой файл форм HTML ...

<form action="/crud/addforms/" class="post-form" method="POST">
    {% csrf_token %}

        <br>
    <label>
        user Name :
            {{form.user_name}}
    </label>
        <br>
        <br>
    <label>
        user Email : {{form.user_email}}
    </label>
        <br>
        <br>
    <label>
        user phone :    {{form.user_phone_number}}
    </label>

    <br>
    <br>
    <input type="submit" value="Submit">
</form>

Теперь я добавляю список пользователей шоу HTML формы слышат. эта актуальная проблема заключается в том, что, когда я помещаю информацию о пользователе в форму отправки, она должна перенаправлять шоу. но это все еще остается после нажатия кнопки отправки ...

<!DOCTYPE html>
    <html lang="en">
        <head>  
            <meta charset="UTF-8">  
            <title>Employee Records</title>  
        </head>
     <body>
        <table class="table table-striped table-bordered table-sm">  
            <thead class="thead-dark">  
                <tr>
                    <th>ID</th>
                    <th>User Name</th>
                    <th>User Email</th>
                    <th>User Contact</th>
                    <th>Actions</th>
                </tr>
            </thead>

            <tbody>  
                {% for dt in user9 %}
                <tr>
                    <td>{{ dt.id }}</td>
                    <td>{{ dt.user_name }}</td>
                    <td>{{ dt.user_email }}</td>
                    <td>{{ dt.user_phone_number }}</td>
                    <td>
                        <a href="/edit/{{ dt.id }}"><span class="glyphicon glyphicon-pencil" >Edit</span></a>
                        <a href="/delete/{{ dt.id }}">Delete</a>
                    </td>
                </tr>
                {% endfor %}
            </tbody>  
        </table>  
            <br>
            <br>
        <center><a href="/crud/addforms" class="btn btn-primary">Add New Record</a></center>
     </body>
    </html> 

1 Ответ

0 голосов
/ 02 апреля 2020

Вы должны добавить путь для перенаправления, этот пост должен помочь вам учебник по перенаправлению или djangoproject

РЕДАКТИРОВАТЬ:

Это то, что я имею в виду под путем

def addform(request):
    response = redirect('/redirect-success/')
    return response

Проблема в том, что здесь return redirect() вы не указали, куда будет перенаправляться форма. сделайте что-то вроде этого return redirect('show') show, являющегося именем пути в вашем urls.py

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