Ich weiß, das ist eine einfache Frage, sorry. Ich möchte nur eine einfache Zeichenfolge zurückgeben, keine Vorlagen.
Ich habe meine ansicht:
def myview(request):
return "return this string"
Ich erinnere mich nicht an den Befehl. Vielen Dank
Nach der Dokumentation :
Eine Ansichtsfunktion oder kurz Ansicht ist einfach eine Python-Funktion, die nimmt eine Webanforderung und gibt eine Webantwort zurück.
Jede Ansichtsfunktion ist für die Rückgabe einer HttpResponse .__ verantwortlich. Objekt.
Mit anderen Worten, Ihre Sicht sollte eine HttpResponse
Instanz zurückgeben:
from Django.http import HttpResponse
def myview(request):
return HttpResponse("return this string")
Sie können einen String nicht direkt senden, aber Sie können ein JSON-Objekt senden:
from Django.http import JsonResponse
def myview(request):
return JsonResponse({'mystring':"return this string"})
Dann verarbeiten Sie das. Mit Javascript zum Beispiel, wenn die Seite von AJAX angefordert wurde:
$.ajax({url: '/myview/', type: 'GET',
data: data,
success: function(data){
console.log(data.mystring);
...
}
})
https://docs.djangoproject.com/de/1.11/ref/request-response/#jsonresponse-objects
wir verwenden HttpResponse zum Rendern der Daten
HttpResponse zum Rendern des Textes
from Django.http import HttpResponse
def Index(request):
return HttpResponse("Hello World")
HttpResponse zum Rendern des HTML
from Django.http import HttpResponse
def Index(request):
text = """<h1>Hello World</h1>"""
return HttpResponse(text)
Wenn Sie einen Chat-Bot erstellen oder diese Antwort auf eine Postanforderung zur Bestätigung benötigen, sollten Sie den Dekorator hinzufügen, andernfalls blockiert Django die Postanfragen . Weitere Informationen finden Sie hier https://docs.djangoproject.com/de /2.1/ref/csrf/
In meinem Fall musste ich content_type = "text/plain" hinzufügen.
from Django.views.decorators.csrf import csrf_protect
from Django.http import HttpResponse
@csrf_exempt
def Index(request):
return HttpResponse("Hello World", content_type="text/plain")
Laut Django Dokumentation Django verwendet Anfrage- und Antwortobjekte, um den Status durch das System zu leiten.
Wenn eine Seite angefordert wird, erstellt Django ein HttpRequest-Objekt, das Metadaten zu der Anforderung enthält. Anschließend lädt Django die entsprechende Ansicht und übergibt HttpRequest als erstes Argument Jede Ansicht ist für die Rückgabe eines HttpResponse-Objekts verantwortlich
from Django.http import HttpResponse
def myview(request):
text="return this string"
return HttpResponse(text)
rls.py
from Django.contrib import admin
from Django.urls import path
from . import views
urlpatterns = [
path('admin/', admin.site.urls),
path('about/',views.aboutview),
path('',views.homeview),
]
views.py
from Django.http import HttpResponse
def aboutview(request):
return HttpResponse("<h1>about page</h1>")
def homeview(request):
return HttpResponse("<h1>home page</h1>")