Django admin 如何一步添加用户

2015-09-22 14:51:20 +08:00
 BruceLi

用 Django admin 开发一个简单的数据录入网站,客户需要自己创建一些用户, Django admin 默认的 form 太复杂而且要两步才能完成,如何一步搞定?

4217 次点击
所在节点    Django
7 条回复
wenbinwu
2015-09-22 15:12:40 +08:00
你自己写一个注册页面?
BruceLi
2015-09-22 15:20:58 +08:00
@wenbinwu 如果不能重载默认的 form ,估计只能这样了。
cnleoyang
2015-09-22 15:27:38 +08:00
自己写吧,共享一个代码片段供参考
https://gist.github.com/anonymous/875d35faf9c8eb3ffa84
BruceLi
2015-09-22 16:43:35 +08:00
@cnleoyang 谢谢,去学习一下。
gevin
2015-09-22 16:49:09 +08:00
我也提供一个用户注册的实现

```
class RegisterView(View):
template_name = 'accounts/simple_form.html'

def get(self, request, form=None):
if not form:
form = forms.RegisterForm()

data = {'title':'Register', 'form':form, 'btn_name':'Register'}

return render(request, self.template_name, data)

def post(self, request):
form = forms.RegisterForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
email = form.cleaned_data['email']
password = form.cleaned_data['password']

user = User.objects.create_user(username, email, password)

user.save()

msg = 'Successfully Registered'
messages.add_message(request, messages.SUCCESS, msg)
url = reverse('accounts:login')
return redirect(url)

else:
return self.get(request, form)
```
gevin
2015-09-22 16:50:57 +08:00
BruceLi
2015-09-23 11:16:17 +08:00
@gevin 刚看到,谢谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/222784

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX