Tôi có hai mô hình trong Django: Người dùng (được xác định trước bởi Django) và UserProfile. Cả hai được kết nối thông qua một khóa ngoại. Tôi đang tạo biểu mẫu cho phép khách hàng chỉnh sửa hồ sơ người dùng của họ. Như vậy, biểu mẫu này sẽ được dựa trên cả hai mô hình được đề cập.Làm thế nào để bạn viết một phương pháp lưu cho các hình thức trong django?
Làm cách nào để tạo phương thức save() cho biểu mẫu này? Các bước/yêu cầu trong việc hoàn thành chức năng lưu là gì?
Dưới đây là những gì tôi có cho đến nay trong forms.py:
class UserChangeForm(forms.Form):
#fields corresponding to User Model
email = forms.EmailField(required=True)
first_name = forms.CharField(max_length = 30)
last_name = forms.CharField(max_length = 30)
password1 = forms.CharField(max_length=30, widget=forms.PasswordInput)
password2 = forms.CharField(max_length=30, widget=forms.PasswordInput)
#fields corresponding to UserProfile Model
gender = forms.CharField(max_length = 30, widget=forms.Select)
year = forms.CharField(max_length = 30, widget=forms.Select)
location = forms.CharField(max_length = 30, widget=forms.Select)
class Meta:
fields = ("username", "email", "password1", "password2", "location", "gender", "year", "first_name", "last_name")
def save(self):
data = self.cleaned_data
# What to do next over here?
Đây có phải là một sự khởi đầu tốt hay bất cứ ai muốn giới thiệu thay đổi này trước khi chúng ta bắt đầu viết các lưu) chức năng (?
Tại sao không sử dụng 'ModelForm's? –
Tôi có thể tạo một ModelForm dựa trên hai mô hình không? Nếu vậy, tôi sẽ làm thế nào? – goelv