2016-04-28 17 views
1

私はDjangoの初心者だけど、私は夜間に受信したレコードの仕事の呼び出しにはほとんどのアプリを作ってるんです。 現時点ではアプリは正常に動作します。私は、コールデータを記入するためのフォームを作成しました。このフォームは、汎用ListViewを使用してテーブルとして提示されます。ここでオブジェクトを選択

class IndexView(LoginRequiredMixin, generic.ListView): 
    login_url = '/login/' 
    redirect_field_name = 'redirect_to' 
    template_name = 'chiamate/list_full.html' 
    context_name = 'lista_chiamate' 
    def get_queryset(self): 
     return Chiamata.objects.all 

は、テンプレートのコードです:

{% extends 'chiamate/base.html' %} 

{% block content %} 

{% if user.is_authenticated %} 
    <a href="{% url "chiamate:inserimento chiamata" %}" class="btn btn-success"><i class="fa fa-plus-square-o fa-lg" aria-hidden="true"></i> Nuova Chiamata</a> 
<p></p> 
{% else %} 
    <p>Welcome, Guest please <a href="{% url 'login' %}">[login]</a></p> 
{% endif %} 

    <div class="table-responsive"> 
    <table class="table table-striped"> 
     <form action="{{ action }}" method="post"> 
      {% csrf_token %} 
    {% for chiamata in object_list %} 
     {% if chiamata.data_chiusura.weekday == 4 or chiamata.data_chiusura.weekday == 5 or chiamata.data_chiusura.weekday == 6 %} 
      <tr class="info"> 
     {% elif chiamata.data_chiusura == None %} 
      <tr class="danger"> 
     {% else %} 
      <tr> 
     {% endif %} 
       <td><input class="checkbox" name="chiamata_mail" type="checkbox" id="checkbox_{{ chiamata.id }}"value="{{ chiamata.id }}"></td> 
       <td class="txtdata">{{ chiamata.utente.get_full_name|wordwrap:5 }}</td> 
       <td class="txtdata"><a href="{% url 'chiamate:dettaglio chiamata' chiamata.id %}">{{ chiamata.data_chiamata|date:"l d M Y H:i" }}</a></td> 
       <td>{{ chiamata.interlocutore }}</td> 
       <td>{{ chiamata.testo_chiamata|truncatechars:200 }}</td> 
       <td class="txtdata">{{ chiamata.reperibile|wordwrap:5 }}</td> 
       <td>{{ chiamata.data_chiusura|date:"H:i" }}</td> 
       <td><a href="{% url 'chiamate:modifica chiamata' pk=chiamata.id %}" class="btn btn-success" ><i class="fa fa-pencil-square-o fa-lg" aria-hidden="true"></i> Edit</a></td> 
       <td><a href="{% url 'chiamate:cancella chiamata' pk=chiamata.id %}" class="btn btn-danger"><i class="fa fa-trash-o fa-lg" aria-hidden="true"></i> Delete</a></td> 
      </tr> 
     {% endfor %} 
     <input id="send_selected" type="submit" value="Send" /> 
    </form> 
    </table> 
    </dv> 
{% endblock %} 

私はすでにここにチェックボックスを追加しようとしました。私が行うと、彼らはページに表示が、私は送信ボタンを押したときに(現在のフォームの送信として実装されますが、私は、ブートストラップのボタンを使用したい)私は、電子メール機能にオブジェクトを渡す方法がわからない、または少なくともそれらを新しいページに表示してください。

答えて

0

あなたはあなたのビューのpost方法を定義する必要があります

class IndexView(LoginRequiredMixin, generic.ListView): 

    def post(self, request, *args, **kwargs): 
     return ChiamataUpdateView.as_view()(request) 

をそして、他のビュー上のポストデータを扱います。あなたがall()を呼び出していないので、

また、あなたget_querysetは、クエリセットを返していません。それは次のようになります。 return Chiamata.objects.all()

関連する問題