2015-12-23 3 views
-1

мне нужно вернуть calculate_c значение в HTMLкак вернуть простую функцию в файл django html?

urls.py

from django.conf.urls import include, url 
from . import views 

urlpatterns = [ 
    url(r'^$', views.my_view, name='my_view'), 

] 

views.py

from django.shortcuts import render 
from django.http import HttpResponse 

def abc(): 
    a = 1 
    b = 3 
    calculate_c = a + b 
    return calculate_c 

def my_view(request): 
    context = {'calculated_value': 0} 
    context['calculated_value'] = abc() 
    return HttpResponse(request, 'blog/post_list.html', context) 

post_list.html

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

{% block content %} 

<h2>{{calculated_value}}</h2> 
<h2>Test</h2> 

{% endblock %} 

Внутренняя ошибка сервера:/ TraceBack (последний последний звонок): Файл «/home/v1/newproject/newenv/lib/python3.4/site-packages/django/core/handlers/base.py», строка 242, в get_response response = self.apply_response_fixes (запрос, ответ) Файл «/home/v1/newproject/newenv/lib/python3.4/site-packages/django/core/handlers/base.py», строка 305, в apply_response_fixes response = func (запрос, ответ) Файл «/ home/v1/newproject/newenv/lib/python3.4/site-packages/django/http/utils.py ", строка 17, в условном_content_removal , если 100 < = response.status_code < 200 или response.status_code в (204, 304): ТипError: unorderable types: int() < = dict()

+0

У вас есть функции, и ? – Gocht

+0

Мне нужно вернуть значение calc_c в html-файле и не понимать, что мне нужно писать в html-файле - {% for ...%} или {{something}}, как это .... – gb1982

+0

Нажмите, чтобы изменить и добавить информацию к вопрос вместо того, чтобы вставить комментарий. –

ответ

1

Если вам нужно значение, возвращенное adc() в шаблоне, вы можете передать его через context:

def my_view(request): 

    ... 
    context = {...} 
    context['calculated_value'] = abc() 
    return render(request, 'blog/post_list.html', context) 

А затем в шаблоне вы можете использовать:

{{ calculated_value }} 
+0

вместо контекста = {...} Я добавил context = {'calculate_value': 0} и получите ошибку - TypeError: unorderable types: int() <= dict() – gb1982

+0

@ gb1982 Удалили ли вы следующую строку? – Gocht

+0

нет Я не удалял – gb1982

0
def abc(): 
    return (lambda a, b: a+b) 

calculate_c = abc() 
calculate_c(1,3) 
4 
Смежные вопросы