python - views.py 中的“SyntaxError:无效语法”
问题描述
在我的应用程序中,当用户填写输入时,我应该向他/她发送电子邮件并创建该用户的实例。但由于以下错误,我无法运行我的应用程序:
Exception in thread django-main-thread:
Traceback (most recent call last):
...
File "/Users/progbash/Desktop/pragmatech/pragmatechproject/pragmatechproject/urls.py", line 21, in <module>
path('', include('pragmatechapp.urls')),
File "/Users/progbash/Desktop/pragmatech/denvx/lib/python3.7/site-packages/django/urls/conf.py", line 34, in include
urlconf_module = import_module(urlconf_module)
File "/Users/progbash/Desktop/pragmatech/denvx/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/progbash/Desktop/pragmatech/pragmatechproject/pragmatechapp/urls.py", line 2, in <module>
from . import views
File "/Users/progbash/Desktop/pragmatech/pragmatechproject/pragmatechapp/views.py", line 26
return render(request, 'pragmatechapp/index.html', context)
^
SyntaxError: invalid syntax
这是我的views.py
:
def index(request):
context = {
'applicants': Applicant.objects.all()
}
if request.method == "POST":
applicant_name = request.POST.get('name')
applicant_email = request.POST.get('email')
applicant_phone = request.POST.get('phone')
subject = 'Thank you.'
message = 'Hi, ' + str(applicant_name)
from_email = settings.SERVER_EMAIL
recipient_list = [applicant_email]
send_mail(subject, message, from_email, recipient_list)
if request.POST.get('email'):
Applicant.objects.create(
name = request.POST.get('name'),
email = request.POST.get('email'),
phone = request.POST.get('phone')
return render(request, 'app/index.html', context)
还有我的urls.py
文件:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index')
]
Lorem Ipsum 只是印刷和排版行业的虚拟文本。自 1500 年代以来,Lorem Ipsum 一直是行业的标准虚拟文本,当时一位不知名的印刷商采用了一种类型的厨房并将其加扰以制作一本类型样本书。它不仅经历了五个世纪,而且经历了电子排版的飞跃,基本保持不变。它在 1960 年代随着包含 Lorem Ipsum 段落的 Letraset 表的发布而流行起来,最近还随着 Aldus PageMaker 等桌面出版软件(包括 Lorem Ipsum 的版本)而普及。
解决方案
只需从索引视图更改您的以下部分...
你在那边缺少完整的括号......
if request.POST.get('email'):
Applicant.objects.create(
name = request.POST.get('name'),
email = request.POST.get('email'),
phone = request.POST.get('phone')
)
推荐阅读
- oracle - 在 oracle 中计算包含 HH:MI:SS 格式的日期差异的列上的运行总计
- reactjs - 构建失败:退出代码 127
- java - 如何通过 SDK Java 在 AWS API Gateway 中启用 CORS
- powershell - 一次将对象数组添加到 PSObject
- python - GroupBy 结果到列表字典(具有多列)
- c++ - 这是 C++ 中带有指针的数组的一个很好的使用/代码吗?
- excel - 从较大的二维数组创建二维数组
- javascript - 使用 Array.prototype.includes 定位对象数组中的属性
- php - 自定义帖子类型获取 URL 循环短代码
- python - 我在 Spyder (Anaconda) 中的 ipython 控制台没有选择正确的 Windows 系统 PATH 环境变量