как я получаю данные из модального маршрута в приложение - PullRequest
0 голосов
/ 13 марта 2020

Я совсем новичок в python. Я пытаюсь создать небольшую складскую программу, в которой данные извлекаются из базы данных, и пользователь может «редактировать» количество товаров на складе.

Я получил список из базы данных. Я могу передать данные в список. Я добавил модал, где отображается строка, выбранная в списке. также отлично работает его правильные данные, которые отображаются. Я добавил поле ввода (antal), в которое можно вставить новый запас.

Моя проблема в том, что я не могу передать входные данные из модального в app.route по маршрутам, чтобы я мог обновить база данных.

Я получаю только возврат get / list, разве это не должно быть возвращенное сообщение?

вот код:

list. html

{% extends 'base.html' %}

{% block head %}
    {{ super() }}
{% block title %}    
    <title>Produkt Liste</title>
{% endblock title %} 
{% endblock head %}



 <content>
{% block content %}
<br>
  <div id="content" class="p-4 p-md-5 pt-5">
          <h2 class="mb-4">Produkt Liste</h2>
      <div class="row">
          <div class="col-md-13">


    <table class="table table-striped table-hover">
                <thead>
                <tr>Søg <a<span class="glyphicon glyphicon-search" style="font-size:20px;"></span></a>
                    <th>Id</th>
                    <th>Lokation</th>
                    <th>Produkt</th>
                    <th>Antal på Lager</th>
                    <th>Oprettet</th>
                    <th>Ændret</th>
                    <th>Ændret af</th>
                </tr>
                </thead>

{% for ProductStock in lists %}

<tbody>
        <tr> 
          <td>{{ ProductStock.id }}</td>
          <td>{{ ProductStock.location }}</td>         
          <td>{{ ProductStock.product }}</td>
          <td>{{ ProductStock.available_stock }}</td>
          <td>{{ ProductStock.time_created }}</td>
          <td>{{ ProductStock.time_updated }}</td>
          <td>{{ ProductStock.changed_by }}</td>
         <td><button type="button" class="btn btn-primary btn-sm" data-toggle="modal" data-target="#myOutput{{ ProductStock.id }}">Rediger</button></td> 
        </tr>
{% endfor %}
</tbody>

       
 </table>        

{% for ProductStock in lists %}
 <!-- Modal -->
  <div class="modal fade" id="myOutput{{ ProductStock.id }}" role="dialog" aria-labelledby="myOutput{{ ProductStock.id }}" aria-hidden="true">
    <div class="modal-dialog modal-lg">

      <!-- Modal content-->
      <div class="modal-content">
        <div class="modal-header">
          <h4 class="modal-title">Rediger antal</h4>
          <button type="button" class="close" data-dismiss="modal">&times;</button><span class='glyphicon glyphicon-chevron-left'></span> Tilbage</a></p>
        </div>
       <div class="modal-body">
      <form action="/products" method="POST">
        <label for="antal">Antal:</label><br>
        <input type="number" class="form-control" id="antal" value="{{ ProductStock.available_stock }}" placeholder="antal" name="antal" min="1" max="1000000"><br>
      </form>

      </div> 
    <table class="table table-striped table-hover">
                <thead>
                <tr> 
                    <th>Id</th>
                    <th>Lokation</th>
                    <th>Produkt</th>
                    <th>Antal</th>
                    <th>Oprettet den</th>
                    <th>Ændret den</th>
                    <th>Ændret af</th>
                </tr>
                </thead>

<tbody>
        <tr> 
          <td>{{ ProductStock.id }}</td>
          <td>{{ ProductStock.location }}</td>         
          <td>{{ ProductStock.product }}</td>
          <td>{{ ProductStock.available_stock }}</td>
          <td>{{ ProductStock.time_created }}</td>
          <td>{{ ProductStock.time_updated }}</td>
          <td>{{ ProductStock.changed_by }}</td>
        </tr>
</tbody>
    </table>
        <div class="modal-footer">
          <button type="button" class="btn btn-default" data-dismiss="modal">Luk</button>      
      <form>
          <button type="submit" class="btn btn-primary" value="antal" id="modal-confirm" data-toggle="modal" data-target="antal">Gem ændringer</button>
      </form>
        </div>
      </div>

    </div>
  </div>


{% endfor %}

  {% endblock content %}
</content>

иways.py

@app.route('/lists', methods=['GET', 'POST'])
@login_required
def lists():
    lists = ProductStock.query.all() #filter_by(item_number=item_number).first_or_404()
    form = ListForm()
    ProductStocks.available_stock = form.antal.data
    if request.method == 'POST':
        ProductStock.available_stock = form.antal.data
        flash('Your changes have been saved.')
        print('valideret')

        return redirect(url_for('lists'))    
    elif request.method == 'GET':
        form.antal.data =  ProductStock.available_stock
        flash('Your changes have NOT been saved.')
        
        print (ProductStock.available_stock)
    return render_template('list.html', lists=lists, title="List", form=form)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...