отправка данных из формы в БД в Django - PullRequest
0 голосов
/ 15 апреля 2010

У меня есть форма, в которой я могу вводить текст через текстовые поля. Как мне сделать, чтобы эти данные вошли в БД при нажатии на кнопку отправить.

это код формы в шаблоне.

<form method="post" action="app/save_page">
<p>
Title:<input type="text" name="title"/>
</p>
<p>
Name:<input type="text" name="name"/>
</p>
<p>
Phone:<input type="text" name="phone"/>
</p>
<p>
Email:<input type="text" name="email"/>
</p>
<p>
<textarea name="description" rows=20 cols=60>
</textarea><br>
</p>
<input type="submit" value="Submit"/>
</form>

У меня есть функция в views.py для сохранения данных на странице. Но я не знаю, как правильно это сделать:

def save_page(request):
   title = request.POST["title"]
   name = request.POST["name"]
   phone = request.POST["phone"]
   email = request.POST["email"]
   description = request.POST["description"]

Теперь, как мне отправить их в БД?

А что мне поместить в views.py, чтобы эти данные попадали в БД? так как мне открыть соединение с базой данных и поместить их в базу данных и сохранить?

я должен сделать что-то вроде:

connection=sqlite3.connect('app.db')
cursor= connection.cursor()
.....
.....
connection.commit()
connection.close()

Спасибо.

Ответы [ 3 ]

6 голосов
/ 15 апреля 2010

Django сделает это за вас, но вам нужно создать форму. Вы должны прочитать о формах в Django и , создающих формы из моделей .

Нет необходимости выполнять эту конкретную задачу, но вы также должны прочитать о Django ORM .

Попробуйте прочитать официальную документацию или одну из книг по Джанго (я узнал Джанго из "Практических проектов Джанго" и "Книги Джанго").

2 голосов
/ 15 апреля 2010

Этот вопрос требует краткого описания всей модели Djando DB.

Краткий ответ: вы не подключаетесь к БД из представления, вы должны использовать Django DB API. Вы должны определить класс модели в вашем models.py, а затем использовать методы класса для обновления данных. Django позаботится о передаче / хранении этого в БД.

Предвосхищая ваш вопрос "как?" К сожалению, мне придется указать вам официальную документацию DJango .

Обновление: еще один хороший ресурс о Django с комментариями, примечаниями и примерами.

0 голосов
/ 20 марта 2017

Вы можете легко сохранить отправленные данные в базе данных django, работая с формами django. Формы Django упрощают сохранение данных в БД, связывая ваши формы с вашими моделями через ModelForm. Прочитайте документацию по формам Django, моделям и ORM. Следующие ссылки могут помочь вам. Я использую Django 1,9 на данный момент

  1. https://docs.djangoproject.com/en/1.9/topics/forms/
  2. https://docs.djangoproject.com/en/1.9/topics/forms/modelforms/#modelform
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...