django - 将电子邮件传递到 django 中的路径
问题描述
我有这样的代码: -
path(something/regex_email/, views.func, name="something"),
如果用户在 url 中输入任何电子邮件,/anyemail/
那么用户应该被重定向到某个页面......
但这并没有将我重定向到该页面,并且我已经看到了有关此类问题的一些先前建议,但这些建议不起作用。
视图.py
def users(request):
if request.method == 'POST':
user_email = request.POST.get('').rsplit('/',1)
print(user_email)
email = UserApprovedModel.objects.get(email__exact=user_email)
form = UserRegisterForm(request.POST)
form.email = email
if form.is_valid():
obj = form.save()
obj.org = request.user.profile.org
obj.save()
return redirect('login')
# username = form.cleaned_data.get('username')
# messages.success(request, f'Your account has been created! You are now able to log in')
# return redirect('login')
else:
form = UserRegisterForm()
user_org = request.user.profile.org
profiles = Profile.objects.filter(org = user_org)
context = {'form': form, 'user_org': user_org.name, 'profiles': profiles}
return render(request, 'users/register.html', context)
解决方案
好吧,您可以尝试将路径添加为:
path('something/<email>/', views.yourView, name='something')
然后您的视图可以将该电子邮件作为参数:
def yourView(request, email):
然后您可以按照您认为合适的方式处理该退货。几乎没有关于您要完成的工作的信息,很难给出更好的答案。希望这可以帮助。
推荐阅读
- docker - 使用 docker compose 运行 kafka 并公开一个不同的端口而不是默认端口
- postgresql - Yii2 和 TimescaleDB:GridView 在大表上非常慢
- java - 如何在 spring webflux Reactive websockets 中发送列表
- c# - 重命名参数后,运行时引用旧名称,在我的代码中任何地方都不存在
- android - 我可以在 FirebaseMessagingService 中启动前台任务吗?
- windows - 排除文件中与多值字符串匹配的所有行
- c# - 在 .NET Core 中获取系统默认 Web 代理
- r - 有没有办法通过 R 中的数学运算合并两个数据帧?
- excel-formula - 将行中的文本与列中的文本匹配
- redirect - 使用 Router::Redirect 对 Cakephp 2 进行 301 重定向