2017-05-22 2 views
0

django 웹 사이트에서 데이터베이스에 새 데이터를 추가하기 위해 fetch_results 함수를 구현했습니다. 이 기능은 페이지를 새로 고칠 때마다 활성화됩니다. 새로운 데이터를 사용할 수있게되면 자동으로 django 테이블 새로 고침

views.py 

def fetch_results(): 
# global result 
documents = DRSDocument.objects.all() 

for doc in documents: 
    computed_image_path = os.path.join(WORKING_DIRECTORY, doc.uuid, 'process_result.jpg') 

    drs_status = doc.status 
    if os.path.isfile(computed_image_path): 

     if drs_status == 'Q': 

      doc.date_process_end = timezone.now() 
      doc.status = 'F' 
      doc.save() 
return render('list_admin.html', {'status': drs_status}) 

이미지가 서버 os.path.isfile(computed_image_path) 데이터에서 사용할 수

은 장고 웹 페이지에서 사용할 수 있습니다. 여기
list_admin.html 

<script> 
function refresh() { 
$.ajax({ 
url: '{% url table_monitoring %}', 
success: function(data) { 
var dtr = $("#container2c", data); 
$('#container2c').html(dtr); 
     } 
    }); 
setTimeout("refresh()", 3000); 
} 

$(function(){ 
refresh(); 
}); 

</script> 

{% endblock %} 

{% block content %} 
<div id="container2c" align="center"> 
<BR> 
<BR> 
    {% if drs_images %} 
    <BR> 
    <form method="post" action="{% url 'retinal_drs_delete_multiple' %}"  style="height: 530px;overflow-y: scroll;width: 90%;"> 
     {% csrf_token %} 
     <table id="myTable" style="width:90%;font-style: normal;"> 
      <thead> 
      <tr style="font-style: italic;"> 
       <th><div class="th-inner"><IMG title="Click to select all" width=12px src="{% static 'images/red-delete-button.png' %}" onclick="return selectAllForDeletion();"></IMG></div></th> 
       <th><div class="th-inner">&nbsp;Image&nbsp;</div></th> 
       <th><div class="th-inner">&nbsp;#&nbsp;</div></th> 
      </tr> 
      </thead> 
     <tbody> 

      {% include 'list_admin_table.html' %} 

     </tbody> 
    </table> 
    <BR> 
    <BR> 
    <input type="submit" value="Delete selected"> 
    <BR> 

    </form> 

여기

urlpatterns = [ 
     url(r'^list/$', retinal_drs_views.list_admin, name='retinal_drs_list_admin') 
     url(r'^table-monitoring/$', retinal_drs_views.fetch_results, name="table_monitoring"), 
] 

내 objectie 주기적 결과 (매 10 초마다) 가져 오기 위해 내 urls.py이고 그것을 반환하는 경우 내 list_admin_table.html

list_admin_table.html 

{% for document in drs_images %} 
      <tr {% if document.completed %}style="color:white; font-weight:bold;"{% else %}style="color: black;"{% endif %}> 
       <td><INPUT type="checkbox" name="delete_{{ document.drs_image.uuid }}" id="id_delete_{{ document.drs_image.uuid }}" value="true"/></td> 
       <td><IMG WIDTH="22px" SRC="{% static 'images/' %}{{ document.drs_image.get_status_icon }}" title="{{ document.drs_image.get_status_display }}"> </td> 
       <td>{{ forloop.counter }}</td> 
      </tr> 

     {% endfor %} 

입니다 사실, table id="myTable"을 자동으로 새로 고침합니다.

저는 AJAX, Jquery, Websockets에 대한 정보를 읽었습니다 ...하지만 장고와 클라이언트 측 프로그래밍을 처음 접했기 때문에 어떤 유효한 결과도 얻지 못했습니다.

감사합니다.

답변

0

나는이 대답을 확인 기본적으로 그것은뿐만 아니라 당신을 위해 here

을 일해야한다