Вопрос относительно получения данных из формы в Django и передачи их в базу данных SQL
У меня есть 2 html/CSS-формы, а также база данных SQL, в которую занесены значения для всех элементов формы. Какие шаги мне нужно предпринять, чтобы убедиться, что форма и база данных связаны?
P.S Я уже создал модель и перенес материал в базу данных SQL.
Можно использовать типовую форму. https://docs.djangoproject.com/en/4.0/topics/forms/modelforms/#modelform
EG
class CommentForm(forms.ModelForm):
class Meta:
model = Comment
fields = ('name', 'email', 'body')
if request.method == 'POST':
# A comment was posted
comment_form = CommentForm(data=request.POST)
if comment_form.is_valid():
# Create Comment object but dont save to database yet
new_comment = comment_form.save(commit=False)
# Assign the current post to the comment
new_comment.post = post
# Save the comment to the database
new_comment.save()
else:
comment_form = CommentForm()
и затем отрендерить это из . Это будет иметь необходимые фидлды.
Или вы можете создать форму с полями, для которых вы создали html/css формы, а затем отобразить ее. Когда форма будет отправлена, сохраните ее в модели по отдельности. Например
class CommentForm(forms.Form):
name = forms.CharField(max_length=25)
email = forms.EmailField()
body = forms.CharField(required=False,widget=forms.Textarea)
if request.method == 'POST':
# Form was submitted
form = CommentForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
comment = Comment(
name = cd['name'],
email = cd['email'],
body = cd['body'],
)
comment.save()
else:
form = EmailPostForm()