我一直在寻找一些有关如何创建类似于 django cms 和 mezzanine 的站点演示的文档。我真正需要的是一种向可能的客户展示该网站在以管理员身份登录时可以执行的操作的方法,并允许他们在不造成伤害的情况下进行更改。有没有我可以引用的开源项目或类似的东西?我感谢您的帮助!
最佳答案
一种解决方案可能是使用 loaddata
管理命令重新加载特定演示帐户数据的 json
固定装置。
(未测试)
# forms.py
class DemoLoginForm(forms.ModelForm):
class Meta:
model = User
fields = ['username', 'password']
widgets = {
'password': forms.PasswordInput(attrs={'initial': '', 'size': '80'})
}
# views.py
from django.core.management import call_command
class DemoLoginView(FormView):
template_name = 'demo-login.html'
form_class = DemoLoginForm
success_url = '/admin/'
def form_valid(self, form):
login(self.request, authenticate(username=form.instance.username, password=new_password))
call_command("loaddata", "/path/to/demo_account_fixture.json", verbosity=0)
return super(DemoLoginView, self).form_valid(form)
关于django - Django 上的实时站点演示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20054307/