我正在工作一个类似于网站的 CMS(内容管理系统)的项目。我正在用 django python 开发这个系统。但我是 Django python 的新手。
我有自己的用户模型(不是 django 用户模型),其中包含一些字段,如用户名、电子邮件、密码等,我从自己的管理面板创建新用户。
如何将加密密码与登录页面上发布的用户密码进行比较。
例如,我第一次创建用户时,123 的密码保存在 db 中,如 pbkdf2_sha24123$000asd$...之后我尝试使用密码 123 登录,但出现密码不相等的错误。
from django.contrib.auth.hashers import make_password
from account.models import myUsers
password = make_password(request.POST.get('password'))
email = request.POST.get('email')
if myUsers.password == password and myUsers.email == email:
#make login and redirect to panel
else:
#show error message
Run Code Online (Sandbox Code Playgroud)
我自己的模型喜欢;
class myUsers(models.Model):
username = models.CharField(max_length=25, verbose_name='username', unique=True)
email = models.CharField(max_length=225, verbose_name='email', unique=True)
password = models.CharField(max_length=225, verbose_name='password')
created_at = models.DateTimeField(auto_now_add=True, verbose_name='created date')
secret_question = models.CharField(max_length=225, verbose_name='secret question')
secret_answer = …Run Code Online (Sandbox Code Playgroud) python django django-models login-control password-encryption
我想使用 django 分页。第一页能够加载产品,但最后一页不显示它们。
\n\n这是我的索引视图:
\n\ndef index(request):\n\n categories = Category.objects.filter(parent_category=None)\n\n product_list = Product.objects.filter(is_deleted=False).order_by(\'created_at\')\n paginator = Paginator(product_list, 1) # Show 25 contacts per page\n page = request.GET.get("page",1)\n\n try:\n products = paginator.page(page)\n except PageNotAnInteger:\n products = paginator.page(1)\n except EmptyPage:\n products = paginator.page(1)\n\n context = {\n \'products\': products,\n \'categories\': categories\n }\n return render(request, \'product/urunler.html\', context)\nRun Code Online (Sandbox Code Playgroud)\n\n这是我的模板:
\n\n<div class="blog-pagination">\n <ul class="flat-pagination style1">\n {% if products.has_previous %}\n <li class="prev">\n <a href="?page={{products.previous_page_number}}" title="">\n <img src="{% static \'images/icons/left-1.png\' %}" alt="">\xc3\x96nceki Sayfa\n </a>\n </li>\n {% …Run Code Online (Sandbox Code Playgroud)