伙计们,我正试图将自己的chatterbot与Django一起使用,但是由于某些原因,我似乎无法获得正确的url和视图,以便Django在我的服务器上显示chatbot。 Django 2.1.1是我使用Python 3.7作为解释器运行的版本。我的聊天机器人位于Sili文件夹中的同一项目中,该文件夹中有自己的views.py和urls.py。
我尝试过但没有运气
from django.contrib import admin
from sili import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', home.views),
]
this is what is in my views.py
from django.shortcuts import render,render_to_response
from django.http import HttpResponse
import json
from django.views.decorators.csrf import csrf_exempt
from chatterbot import ChatBot
# from chatterbot.trainers import ChatterBotCorpusTrainer
chatbot=ChatBot('Sili',trainer='chatterbot.trainers.ChatterBotCorpusTrainer')
# Train based on the english corpus
chatbot.train("chatterbot.corpus.english")
@csrf_exempt
def get_response(request):
response = {'status': None}
if request.method == 'POST':
data = json.loads(request.body)
message = data['message']
chat_response = chatbot.get_response(message).text
response['message'] = {'text': chat_response, 'user': False, 'chat_bot': True}
response['status'] = 'ok'
else:
response['error'] = 'no post data found'
return HttpResponse(
json.dumps(response),
content_type="application/json"
)
def home(request, template_name="home.html"):
context = {'title': 'Sili Chatbot Version 1.0'}
return render_to_response(template_name, context)
我要添加什么到urls.py以便在服务器上显示?这就是我到目前为止
from django.contrib import admin
from sili import views
urlpatterns = [
path('admin/', admin.site.urls),
]
答案 0 :(得分:0)
模块为views
,功能为home
,所以:
from django.contrib import admin
from sili import views
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.home), # <-
]
答案 1 :(得分:0)
在urls.py中,您应该设计路线 您使用home.views但未导入home和home没有view功能 正确的版本是
urlpatterns = [
path('admin/', admin.site.urls),
path('', home.views),
]
答案 2 :(得分:0)
请从.views导入首页,例如,此代码不建议使用,不易阅读
def home(request):
context = {'title': 'Sili Chatbot Version 1.0'}
return render(request,"home.html", context)