パスワードをハッシュ化して DB に格納する
Django 始めて2日目です. 以下のソースで掲題の件が動いていますが、書き方が正しいか分からないので晒しておきます. コメントを求む.
from django import forms from django.contrib import admin from models import User from hashlib import sha1 class UserForm(forms.ModelForm): plain_password = forms.CharField(widget = forms.PasswordInput, required = False) def save(self, commit = True): user = super(UserForm, self).save(commit = False) if self.cleaned_data['plain_password'] != '': user.password = sha1(self.cleaned_data['plain_password']).hexdigest() if commit: user.save() return user class Meta: model = User class UserAdmin(admin.ModelAdmin): form = UserForm admin.site.register(User, UserAdmin)