Как я могу открыть страницу для каждого пользователя в списке и добавить дополнительную информацию python django

У меня есть список пользователей в таблице. Я хочу, чтобы при нажатии на любого пользователя открывалась "страница информации о пользователе".

"страница_информации пользователя" имеет две кнопки "ADD MORE" и "SAVE".

Кнопка "SAVE" сохраняет информацию и показывает их как блок, и она должна сохраниться для этого пользователя.

Кнопка "ADD MORE" позволяет пользователю заполнить поля различной информацией (имя пользователя, рабочий адрес, должность пользователя)

в .html

                 <form id="location_form" class="form" method="post">{% csrf_token %}
                     {{ form }}
                 </form>

в файле form.py

class UserIformationForm(ModelForm):
    user_name = forms.CharField(label='Name', widget=forms.TextInput(attrs={'class': 'form-control'}))
    work_address = forms.CharField(label='address', widget=forms.TextInput(attrs={'class': 'form-control'}))
    user_position = forms.CharField(label='position', widget=forms.TextInput(attrs={'class': 'form-control'}))

    class Meta:
        model = UserIformation
        fields = ['user_name', 'work_address', 'user_position']

в userList.html

<form id="user_form">
        <table class="table ">
            <thead class="table-secondary">
                <tr>
                    <th>ID</th>
                    <th> Name</th>
                    <th> Address</th>
                    <th> Position</th>
                    <th>Add More Locations</th>
                </tr>
            </thead>

            <tbody>
                {% for i in data_list%}
                <tr>
                    <td>{{forloop.counter}}</td>
                    <td>{{i.uName}}</td>
                    <td>{{i.address}}</td>
                    <td>{{i.pos}}</td>

                    <td><a href="#"> Add  </a></td>
                </tr>
                {% endfor %}
            </tbody>
        </table>
     </form>

в view.py

def save_user(request):
    form = UserIformationForm()
    context = {}
    context['form'] = form
    if request.method == 'POST':
        form = UserIformationForm(request.POST)
        if form.is_valid():
            insert_data = form.save()
            context['form'] = form
            return render(request, 'user_information.html', context)
    else:
        return render(request, 'user_information.html', context)


def userlist(request):
    data_list = []
    get_user = UserInfo.objects.all()
    for i in get_user:
        data_dict = {}

        data_dict['id'] = i.map_id
        data_dict['userName'] = i.user_name
        data_dict['address'] = i.address
        data_dict['pos'] = i.pos
        data_list.append(data_dict)

    return render(request, 'user_list.html', {'data_list': data_list})
Вернуться на верх