Django基于类的视图不显示查询结果

2024-10-02 02:38:11 发布

您现在位置:Python中文网/ 问答频道 /正文

为了得到更好的脚本,我正在尝试用类来改进我的Django view。你知道吗

我不知道为什么,但我没有克服用新语法显示查询结果的困难。也许有人能帮我找到解决办法?你知道吗

这是我的观点:

class IdentityIndividuForm(TemplateView) :

    template_name= "Identity_Individu_Form.html"
    model = Individu


    def ID_Recherche (request) :

        if 'recherche' in request.GET:

            query_Nom_ID = request.GET.get('q1NomID')
            query_Prenom_ID = request.GET.get('q1PrenomID')
            query_DateNaissance_ID = request.GET.get('q1DateNaissanceID')
            query_VilleNaissance_ID = request.GET.get('q1VilleNaissanceID')

            sort_params = {}

            Individu_Recherche.set_if_not_none(sort_params, 'Nom__icontains', query_Nom_ID)
            Individu_Recherche.set_if_not_none(sort_params, 'Prenom__icontains', query_Prenom_ID)
            Individu_Recherche.set_if_not_none(sort_params, 'DateNaissance__icontains', query_DateNaissance_ID)
            Individu_Recherche.set_if_not_none(sort_params, 'VilleNaissance__icontains', query_VilleNaissance_ID)

            query_ID_list = Individu_Recherche.Recherche_Filter(Individu, sort_params)

            context = {
                "query_Nom_ID" : query_Nom_ID,
                "query_Prenom_ID" : query_Prenom_ID,
                "query_DateNaissance_ID" : query_DateNaissance_ID,
                "query_VilleNaissanceID" : query_VilleNaissance_ID,
                "query_ID_list" : query_ID_list,
            }

            return render(request, 'Identity_Individu_Form.html', context)

我的网址.py文件:

urlpatterns = [
    url(r'^Formulaire/Individus$', IdentityIndividuForm.as_view(), name="IndividuFormulaire"),
]

和我的模板:

<div class="subtitle-form">
        <h4> <span class="glyphicon glyphicon-user"></span></span> Rechercher le n° identification d'un individu <a><span title="Outil permettant de vérifier si un individu est déjà enregistré dans la Base de Données Nationale. Saisir au minimum Nom et Prénom (entièrement ou en partie). Si la personne recherchée est trouvée, ne pas remplir le formulaire de création de fiche !"
        class="glyphicon glyphicon-info-sign"></a>
        </h4>
    </div>

    <div class="form">
        <form autocomplete="off" method="GET" action="">
            <input type="text" name="q1NomID" placeholder="Nom (ex:TEST) " value="{{ request.GET.q1NomID }}"> &nbsp;
            <input type="text" name="q1PrenomID" placeholder="Prénom (ex:Test)" value="{{ request.GET.q1PrenomID }}"> &nbsp; <p></p>
            <input id="id_search" type="text" name="q1DateNaissanceID" placeholder="Date de Naissance (YY-mm-dd) " value="{{ request.GET.q1DateNaissanceID }}"> &nbsp; <p></p>
            <input id="id_search" type="text" name="q1VilleNaissanceID" placeholder="Ville de Naissance" value="{{ request.GET.q1VilleNaissanceID }}"> &nbsp; <br></br>
            <input class="button" type="submit" name='recherche' value="Rechercher">&nbsp;
        </form>

        <br></br>

        <table style="width:120%">
            <tbody>
                <tr>
                    <th>ID</th>
                    <th>État</th>
                    <th>N° Identification</th>
                    <th>Civilité</th>
                    <th>Nom</th>
                    <th>Prénom</th>
                    <th>Date de Naissance</th>
                    <th>Ville de Naissance</th>
                    <th>Pays de Naissance</th>
                </tr>
                {% for item in query_ID_list %}
                <tr>
                    <td>{{ item.id}}</td>
                    <td>{{ item.Etat}}</td>
                    <td>{{ item.NumeroIdentification}}</td>
                    <td>{{ item.Civilite }}</td>
                    <td>{{ item.Nom }}</td>
                    <td>{{ item.Prenom }}</td>
                    <td>{{ item.DateNaissance }}</td>
                    <td>{{ item.VilleNaissance }}</td>
                    <td>{{ item.PaysNaissance.name }}</td>
                </tr>
                {% endfor %}
            </tbody>
        </table>
    </div>

我的剧本有错吗?我第一次尝试使用面向类的对象。你知道吗

谢谢你!你知道吗


Tags: nameidgetrequestdeitemquerynom
1条回答
网友
1楼 · 发布于 2024-10-02 02:38:11

您需要重命名方法并更改返回

def ID_Recherche(request) :
    # YOUR CODE HERE
    return render(request, 'Identity_Individu_Form.html', context)

def get_context_data(self, **kwargs):
    request = self.request # Or just override it in your code
    # YOUR CODE HERE
    return context

相关问题 更多 >

    热门问题