Wie kann man eine Methode in Tamplate von Google-App-Engine aktivieren

Das Motiv ist:

def printa(x): return x 

Die Antwort ist:

 self.response.out.write(template.render(path, {'printa':printa})) 

Der html ist:

 {{ printa 'sss'}} 

Ich möchte 'sss' in meiner Seite zeigen,

So wie man das macht,

Vielen Dank

aktualisiert

Ich erstelle einen Templatetags-Ordner und 2 py-Datei:

 templatetags |--------__init__.py |--------tags.py 

In tags.py ist:

 #from django import template from google.appengine.ext.webapp import template register = template.Library() def printa(): return 'ssss' register.simple_tag(printa) 

Der html ist:

 {% load tags%} {% printa %} 

Aber es zeigt Fehler, und der Fehler ist:

 TemplateSyntaxError: 'tags' is not a valid tag library: Could not load template library from django.templatetags.tags, No module named tags 

Warum ?

Was ist los mit dir ?

Vielen Dank

die Antwort ist :

Tags.py:

 from google.appengine.ext import webapp register = webapp.template.create_template_register() @register.filter def printa(value,y): return 'url:%s' % y @register.tag def printb(x,y): return str(x.__dict__) +'dddddddddddddddddddddddddddddddd'+ str(y.__dict__) #return x #register.tag('printb',do_pagednav) 

Und dann in html (a ist eine Variable, die ich an die Vorlage sende):

 {{a|printa:"dwqdq"}} {% printb %} 

Woring:

Keine Last verwenden:

 {% load sometags %} 

One Solution collect form web for “Wie kann man eine Methode in Tamplate von Google-App-Engine aktivieren”

Mit dem Standard-Webapp-Template-System (das ist eigentlich Django 0.96), kannst du das nicht machen. Es wird erwartet, dass Sie die Programmlogik in die Programmdateien setzen, nicht in Ihre Vorlagen, so dass Sie keine Argumente an Ihre Variablen übergeben können.

Du sagst nicht, was du eigentlich versuchst. Ich gehe davon aus, dass du nicht buchstäblich etwas ausdrucken willst, da kannst du einfach etwas in die Schablone geben, ohne eine Funktion und es druckt. Für was auch immer du eigentlich versuchst zu tun, die Registrierung eines benutzerdefinierten Filters könnte das sein, was du suchst.

  • Verwenden einer Django-Variablen in einer CSS-Datei
  • Django TemplateSyntaxError: Fehler beim Template-Rendering
  • Django - Wie man Tupel Auspacken in einer Vorlage 'für' Schleife zu tun
  • Wie man html direkt an die Vorlage übergibt
  • Wie kann ich einen Stacktrace in meine Django 500.html Seite einfügen?
  • Wie lade ich eine Javascript- oder CSS-Datei in eine BottlePy-Vorlage ein?
  • Django drucken nur einen Wert in für Schleife in Vorlage
  • Kann kein Bild in meine Django-Vorlage laden
  • Wie debugst du Mako-Vorlagen?
  • Videobackground und Button - Mobile
  • WENN im Django-Template-System
  • Python ist die beste Programmiersprache der Welt.