Как заполнить массив индексированными значениями, соответствующими общей форме входов с матричной структурой? - PullRequest
0 голосов
/ 09 июня 2018

Я пытаюсь получить данные, введенные пользователем, в общей форме с матричной структурой.Представление выглядит следующим образом: введите здесь описание изображения

Полученный массив этого представления в позиции 0 должен иметь (0, 0): u'winf 'и в позиции 5 (1,0): u'winf '.Но я не могу заставить это выглядеть таким образом. Я оставляю код функции и HTML-шаблон

в views.py

def mtz_inter_chara(request):
characteristic_list = list(Characteristic.objects.all())
characteristic_len = Characteristic.objects.count()
matrix = []
for key, j in enumerate(characteristic_list):
    matrix.append((characteristic_list[key], [(j.id, i.id) for i in characteristic_list]))
print(matrix)
if request.method == 'POST':
    matrix_value = dict(((i, j), request.POST["{}-{}".format(i, j)]) for _, r in matrix for i, j in r)
    print(matrix_value)

html

    {% extends "base.html" %}
{% block title %}matriz_interdep{% endblock %} {% block content1 %}
<h1 id="h1enc">Introducir los valores</h1>{% endblock %} {% block content %}

<div id="dives">
    <form action="" method="post">{% csrf_token %}
        <table id="tabes">
            <br>
            <caption id="h1enc">
                <h2>Matriz de interdependencia</h2>
            </caption>
            <tr>
                <th>Características</th>
                {% for dato in chara %}
                <td>{{ dato.name}}</td>
                {% endfor %}
            </tr>
            {% for object, row in matrix %}
            <tr>
                <td>{{object.name}}</td>
                {% for i,j in row%}
                <td>
                    <input type="text" value="winf" name="{{i}}-{{j}}" size="10">
                </td>
                {% endfor %}
            </tr>
            {% endfor %}
            <!-- {{ form.as_table }} -->
            <br>
        </table>
        <input type="submit" name="table-chara" value="Enviar">
    </form>
</div>
{% endblock %}

1 Ответ

0 голосов
/ 09 июня 2018

Прошу прощения у людей, которые посвятили время моему вопросу, что случается так, что кортеж asosiada для каждого введенного значения состоит из идентификатора объектов, и эти идентификаторы не следуют последовательности 0,1,2,3 ... Как я и думал, снова прошу прощения за время

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