如何从弹出模式引导程序中的链接运行函数

问题描述 投票:0回答:1

我有一个包含弹出模式的django项目。模态具有选项卡作为链接。用户单击选项卡之一时,它必须执行一项功能并从数据库中检索数据。

问题是,一旦用户单击选项卡,就什么也没有发生,并且该函数未初始化。

urls.py

path("events/<int:id>/", getEvents, name = "getEvents"),

views.py

def getEvents(request,id):
    q1 = cursor.execute('SELECT Person_.ID FROM Person_ WHERE Person_.ID = {0}'.format(id))
    print('q1==>',q1)
    qresult = q1.fetchone()
    print("qresult==>",qresult)
    print("query is not empty!")
    eventQ = cursor.execute('SELECT Person_.ID, Person_.Full_Name, Events.ID, Events.Event_Title, Events.Event_Details, Links.document_id from Person_, Events, Links where  ( Person_.ID = {0}) and (Person_.ID = Links.A_Person or Person_.ID = Links.B_Person) and (Events.ID = Links.A_Event or Events.ID = Links.B_Event) ORDER BY Events.ID DESC '.format(id))

    resultEvents = eventQ.fetchall()
    return render(request,'pictureCard.html',{
                            "resultEvents":resultEvents,
                            "qresult":qresult,

                            })

pictureCrads.html

<!-- Popup Modal -->
{% for obj in object_list %}
<div id="popModel{{obj.0}}" class="modal fade modal-rtl" role="dialog">
  <div class="modal-dialog modal-lg">
    <!-- Modal content-->
    <div class="modal-content">
      <div class="modal-header Modal-Pic">
        <button type="button" class="close" data-dismiss="modal">&times;</button>
        <h4 class="modal-title">{{ obj.1 }}</h4>
        <a href="{% static 'img/logo_title/icon-AddressBar.png' %}" data-toggle="modal" data-target="#test2"><img src="{% static '/img/card/1.png'%}"/></a>
      </div>
        <ul class="nav nav-tabs" id="myTab" role="tablist">
          <li class="nav-item">
            <a class="nav-link" id="contact-tab" data-toggle="tab" href="#contact{{ obj.0 }}" role="tab" aria-controls="contact" aria-selected="false">contact us</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" id="event-tab" data-toggle="tab" href="{% url 'getEvents' obj.0 %}" role="tab" aria-controls="event" aria-selected="false">Events</a>
          </li>
          <li class="nav-item mr-auto btn-warning">
            <a class="nav-link text-dark" id="contact-tab" data-toggle="tab" href="#picture" role="tab" aria-controls="contact" aria-selected="false">Picture</a>
          </li>
        </ul>
        <div class="modal-body tab-content" id="myTabContent">
          <div class="tab-pane fade" id="contact{{ obj.0 }}" role="tabpanel" aria-labelledby="contact-tab">{{ obj.9 }}</div>

          {% for event in resultEvents %}
          <div class="tab-pane fade" id="event{{ obj.0 }}" role="tabpanel" aria-labelledby="event-tab">
            <button class="btn btn-primary" > events</button>
          {{ event.2 }}
          </div>
          {% endfor %}

          <div class="tab-pane fade" id="picture" role="tabpanel" aria-labelledby="contact-tab">
            <a class="" href="#"><img class="" src="{% static '/img/card/1.png'%}"/></a>
          </div>
        </div>
        </div>
    </div>
</div>
     {% endfor %}

......

<footer class="card-footer card-footer-buttom text-center bg-info">
                                    <form method="GET" action="{% url 'getEvents' obj.0 %}">
                                    <a href="#" type="button" id="btnfooter" class="btn btn-primary" data-toggle="modal" data-target="#popModel{{obj.0}}">detais</a>

                                    </form>
</footer> 
django bootstrap-4 tabs modal-dialog
1个回答
0
投票

可能django不知道{object_list%中的obj的%}。因为您要发送2个变量,分别是resultEvents和qresult,但是您的html文件正在查找“ object_list”字典或列表。这可能是问题所在。

希望这会有所帮助,

© www.soinside.com 2019 - 2024. All rights reserved.