2017-07-15 250 views
-1

請讓我知道在Django中如何調用從模板HTML寫的方法來查看。 也請告訴我如何傳遞變量。如何從模板調用函數使用Django

class index(TemplateView): 
    template_name = "index.html" 

    def get(self, request, *args, **kwargs): 
     text = "text" 
     return render(request, self.template_name, {'text': text}) 

def Replace 
    text = "Replaced" 
    (I want to pass variable text to index html from here) 

index.html的是如下

<p>{{ text }}<p> 
<a html="{?????}">text replace</> 

如果單擊「文本替換」你要調用的函數「替換」,以取代變量「文本」。 雖然這是一個基本的問題,謝謝。

+0

如果您只想替換某個標籤中的文本,爲什麼不使用ajax? –

+0

問題代碼只是一個例子,我想用函數替換變量並將變量傳遞給template.Without使用ajax。 – xKxAxKx

+0

那麼你想要在客戶端執行該功能(由任何用戶的操作啓動)還是在渲染模板時執行? –

回答

1

你需要編寫你的函數,然後用url調用它然後更新模板。

views.py

def replace(request): 
     text = "replaced" 
     return render(request, 'index.html', {'text': text}) 
在urls.py

url(r'replace/$', views.replace, name='replace'), 

index.html中

{{ text }} 
<a href="url_to_the_function">Text Replace <a> 
0

您可以在Django模板語言使用地址標籤:

<a href="{% url 'appName:urlName' %}"> replace </a>