В чем разница между null = True и blank = True в Django?

avatar
user993563
22 декабря 2011 в 20:11
352229
24
1119

Когда мы добавляем поле базы данных в django, мы обычно пишем:

models.CharField(max_length=100, null=True, blank=True)

То же самое делается с ForeignKey, DecimalField и т. Д. В чем основная разница в наличии

  1. null=True только
  2. blank=True только
  3. null=True, blank=True

в отношении различных полей (CharField, ForeignKey, ManyToManyField, DateTimeField). Каковы преимущества / недостатки использования 1/2/3?

Источник
juliomalegria
22 декабря 2011 в 20:30
11

У вас есть хорошие ответы по этому поводу здесь: coderhelper.com/questions/8159310/… и здесь: coderhelper.com/questions/4384098/…

Salman von Abbas
25 ноября 2013 в 13:06
3

Приятного чтения: b-list.org/weblog/2006/jun/28/…

Sergey Orshanskiy
9 июня 2014 в 20:45
0

Да, у меня также есть этот вариант использования с ForeignKey с blank=True, но без null=True. Когда модель сохранена, я хочу автоматически "опубликовать" ее, создав из нее опубликованную запись. Поэтому я не могу сохранить null в базе данных, поскольку каждая модель должна быть «опубликована», но я хочу иметь возможность оставить поле пустым в админке.

ramwin
25 апреля 2018 в 06:46
0

Я думаю, вас может заинтересовать [Сохранить пустое поле CharField, допускающее значение null, а не как пустую строку] (code.djangoproject.com/ticket/4136). По этому поводу ведется много дискуссий, и вы можете столкнуться с очень практической проблемой (например, вы хотите добавить URL-адрес openid для каждого пользователя, который может быть нулевым и должен быть уникальным).

Fernando Valente
31 марта 2021 в 17:51
0

Избегайте использования null в строковых полях, таких как CharField и TextField. docs.djangoproject.com/en/3.1/ref/models/fields

Ответы (24)

avatar
Chris Pratt
22 декабря 2011 в 20:35
1337

null=True устанавливает NULL (по сравнению с NOT NULL) в столбце вашей БД. Пустые значения для типов полей Django, таких как DateTimeField или ForeignKey, будут сохранены как NULL в базе данных.

blank определяет, будет ли это поле обязательным в формах. Это включает в себя администратора и ваши пользовательские формы. Если blank=True, то поле не требуется, а если оно False, поле не может быть пустым.

Комбинация из двух встречается так часто, потому что обычно, если вы собираетесь позволить полю быть пустым в вашей форме, вам также понадобится ваша база данных, чтобы разрешить значения NULL для этого поля. Исключение составляют CharField и TextField, которые в Django не имеют значения и никогда не сохраняются как NULL. Пустые значения хранятся в БД как пустая строка ('').

Несколько примеров:

models.DateTimeField(blank=True) # raises IntegrityError if blank

models.DateTimeField(null=True) # NULL allowed, but must be filled out in a form

Очевидно, что эти два параметра не имеют логического смысла использовать (хотя может быть вариант использования для null=True, blank=False, если вы хотите, чтобы поле всегда было обязательным в формах, необязательно при работе с объектом через что-то вроде оболочка.)

models.CharField(blank=True) # No problem, blank is stored as ''

models.CharField(null=True) # NULL allowed, but will never be set as NULL
Типы

CHAR и TEXT никогда не сохраняются Django как NULL, поэтому null=True не требуется. Однако вы можете вручную установить для одного из этих полей значение None, чтобы принудительно установить его как NULL. Если у вас есть сценарий, в котором это может быть необходимо, вы все равно должны включить null=True.

user798719
25 июня 2013 в 06:17
0

В вашем объяснении models.DateTimeField (blank = True) вы говорите, что если этот DateTimeField оставлен пустым, возникает IntegrityError. Но я думал, что blank = True означает, что поле не должно заполняться пользователем, так почему же IntegrityError?

Chris Pratt
25 июня 2013 в 14:32
8

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

Joseph Sheedy
25 июля 2013 в 21:21
2

Я думаю, что user798719 имеет в виду значение blank, которое в вашем примере должно быть False вместо True: models.DateTimeField (blank = False) # вызывает IntegrityError, если пусто

Vinod Kurup
15 августа 2013 в 14:58
5

Нет, Крис пытается указать, почему наличие blank = True без null = True может вызвать проблемы в DateTimeField.

Johndt
12 августа 2014 в 21:15
0

Обратите внимание, что вы можете blank=True для поля, введенного системой.

Ranju R
11 сентября 2014 в 04:30
0

@ user798719 поле не должно заполняться пользователем, но должно присваивать какое-то значение этому полю перед сохранением этого объекта в базе данных (например, в методе сохранения этой модели).

stvsmth
20 мая 2016 в 15:02
6

ПРИМЕЧАНИЕ для пользователей Oracle: неверно, что «CHAR и TEXT НИКОГДА не сохраняются Django как NULL». Это верно для большинства бэкэндов, но Oracle принудительно устанавливает пустую строку в NULL, поэтому бэкэнд Django Oracle является исключением из приведенного выше оператора Django Docs

Edward D'Souza
3 августа 2016 в 17:14
17

@ChrisPratt Незначительное исправление к вашему сообщению: CharFields может быть сохраненным как NULL в базе данных (что переводится как None в Python), если вы установите null = True. docs даже говорят, чтобы избежать установки null = True, потому что это позволяет два разных типа "пустых" значений. Я только что протестировал это поведение с Django 1.8 / MySQL 5.6.

Brian H.
3 мая 2017 в 12:25
4

никто не будет упоминать комбинацию: blank=True, null=False, default="something"?

mohammed wazeem
23 января 2019 в 11:31
0

Пожалуйста, помогите coderhelper.com/questions/54326137/…

Malik Brahimi
20 апреля 2020 в 02:33
0

@ChrisPratt Я использую Django в качестве серверной части. Означает ли это, что пустые строки из полей формы в моем интерфейсе будут интерпретироваться как пустые, когда я отправляю сообщение в конечную точку?

avatar
Kapil Sharma
5 сентября 2021 в 07:17
0

Вот его ответ простыми словами: -

С помощью null = True мы сообщаем базе данных , что это поле модели может быть NULL, с помощью blank = True мы сообщаем Django , что может быть этим полем модели. ПУСТО

avatar
reborn
27 августа 2021 в 06:03
1

null = True || blank = True || null = True && blank = True

class TestModel(models.Model):
    field1 = models.CharField(max_length=100, null=True)
    field2 = models.CharField(max_length=100, blank=True)   # it's not a correct way
    field3 = models.CharField(max_length=100, null=True, blank=True)

ПОЛЯ БД ДЛЯ: MySQL

CREATE TABLE TestModel (
     `id`        INT(10)        NOT     NULL      AUTO_INCREMENT,

     `field1`    VARCHAR(100)   NULL    DEFAULT   NULL,
     `field2`    VARCHAR(100)   NOT     NULL,
     `field3`    VARCHAR(100)   NULL    DEFAULT   NULL,
)

дело-01: null = True

db:   db   field is accepts null value
form: form field is `required`

NB: DB IS ACCEPTS NULL VALUE, BUT FORM FIELD IS REQUIRED. SO FORM IS 
SUBMITTED WHEN THIS FIELD HAVE SOME VALUE. it's good.

case-02: blank = True

db:   db   field is not accepts null value
form: form field is `optional`

NB: FORM IS VALID WITHOUT ANY VALUE, BUT DB IS NOT ACCEPTS NULL VALUE.
SO THE FORM IS SUBMITTED WITHOUT ANY VALUE THEN BOOM. it's worst.

дело-03: null = True && blank = True

db:   db   field is accepts null value
form: form field is `optional`

NB: HERE FORM FIELD IS OPTIONAL & FORM IS VALID WITHOUT ANY VALUE 
& DB ALSO ACCEPTS NULL VALUE. SO, IT'S BEST TO USE `null=True && blank=True`

:)

avatar
Yilmaz
4 июля 2021 в 01:37
0

blank=True можно задать для любого поля модели, чтобы указать, можно ли оставить это поле пустым при вводе значения в форму. Здесь мы говорим о вводе данных.

null=True, если мы устанавливаем blank=True для поля, это поле модели не получает никакого значения, тогда база данных или Django должны что-то делать с этим полем, когда данные записываются в базу данных. Для любого типа текстового содержимого в базе данных хранится пустая строка, поэтому в базе данных хранится значение. Для других типов полей, таких как поля даты или числа, мы используем специальный тип данных «null». «null» можно использовать, если поле потенциально не имеет значения, но по умолчанию Django не допускает «нулевых» значений. Вот почему вам нужно явно указать null=True.

Допустим, вы установили blank=True для любых нетекстовых полей, но не указали «null = True», Django не будет знать, что хранить, и выдаст ошибку.

avatar
Siva Sankar
27 января 2021 в 11:43
3
Blank=False # this field is required.
Null=False # this field should not be null

Blank=True # this field is optional.
Null=True # Django uses empty string (''), not NULL.

Примечание: Избегайте использования null=True в строковых полях, таких как CharField и TextField и FileField / ImageField.

Ссылка: Django null, Django blank

avatar
Vivek
2 ноября 2020 в 07:39
3

Нулевое значение связано исключительно с базой данных, а пустое значение связано с проверкой. Если в поле указано blank = True, проверка на сайте администратора Django позволит ввести пустое значение. Если в поле пусто = False, поле будет обязательным

avatar
Shedrack
22 октября 2020 в 15:17
2

Простой ответ: Null - для таблиц базы данных, а Blank - для Django Forms.

avatar
Jesvin Vijesh S
8 сентября 2020 в 11:16
0

Когда вы устанавливаете null=true, он устанавливает null в вашей базе данных, если поле не заполнено. Если вы установили blank=true, оно не установит никакого значения в поле.

avatar
Carlos Ribeiro
29 марта 2020 в 16:00
1

Значение null = True и blank = True в модели также зависит от того, как эти поля были определены в классе формы.

Предположим, вы определили следующий класс:

class Client (models.Model):
    name = models.CharField (max_length=100, blank=True)
    address = models.CharField (max_length=100, blank=False)

Если класс формы был определен следующим образом:

class ClientForm (ModelForm):
    class Meta:
        model = Client
        fields = ['name', 'address']
        widgets = {
            'name': forms.TextInput (attrs = {'class': 'form-control form-control-sm'}),
            'address': forms.TextInput (attrs = {'class': 'form-control form-control-sm'})
        }

Тогда поле 'name' не будет обязательным (из-за пустого = True в модели), а поле 'address' будет обязательным (из-за пустого = False в модели).

Однако, если класс ClientForm был определен следующим образом:

class ClientForm (ModelForm):
    class Meta:
        model = Client
        fields = ['name', 'address']

    name = forms.CharField (
        widget = forms.TextInput (attrs = {'class': 'form-control form-control-sm'}),
    )
    address = forms.CharField (
        widget = forms.TextInput (attrs = {'class': 'form-control form-control-sm'}),
    )

Тогда оба поля ('name' и 'address') будут обязательными, ", поскольку поля, определенные декларативно, остаются как есть" (https://docs.djangoproject.com /en/3.0/topics/forms/modelforms/), т.е. по умолчанию для атрибута 'required' поля формы установлено значение True, и для этого потребуется заполнить поля 'name' и 'address', даже если , в модели это поле пустое = True.

avatar
Yash
9 марта 2020 в 09:49
2

Очень простыми словами ,

Пробел отличается от нуля.

null - это чисто относящееся к базе данных , тогда как пустое значение связано с проверкой (требуется в форме) .

Если null=True, Django выполнит store empty values as NULL in the database. Если в поле указано blank=True, проверка формы будет allow entry of an empty value. Если в поле указано пустое значение = False, поле будет обязательным.

avatar
lavee_singh
26 февраля 2020 в 09:17
1

В приведенной ниже таблице показаны основные различия:

+--------------------------------------------------------------------+
| Purpose                  | null=True        | blank = True         |
|--------------------------|------------------|----------------------|
| Field can be empty in DB | Do this          | Unaffected           |
|--------------------------|------------------|----------------------|
| ModelForm(required field)| Unaffected       | field not required   |
|--------------------------|------------------|----------------------|
| Form Validation          | Unaffected       | field not required   |
|--------------------------|------------------|----------------------|
| on_delete=SET_NULL       | Need this        | Unaffected           |
+--------------------------------------------------------------------+
avatar
Vansh Bhardwaj
2 февраля 2020 в 09:38
1

null - по умолчанию False если True, Django сохранит пустое значение в базе данных как null.

пусто - по умолчанию False если true, это поле может быть пустым

еще, перейти https://docs.djangoproject.com/en/3.0/topics/db/models/

avatar
Tabish
18 ноября 2019 в 06:47
4

null для базы данных, а пустой для проверки полей, которые вы хотите отобразить в пользовательском интерфейсе, например текстовое поле, чтобы получить фамилию человека. Если lastname = models.charfield (blank = true) он не просил пользователя вводить фамилию, поскольку теперь это необязательное поле. Если lastname = models.charfield (null = true) , то это означает, что если это поле не получает никакого значения от пользователя, оно будет сохранено в базе данных как пустая строка "".

avatar
sharif_42
29 августа 2019 в 05:35
9

Значения по умолчанию для пустых и пустых полей - False.

Null: это связано с базой данных. Определяет, будет ли данный столбец базы данных принимать нулевые значения или нет.

Пусто: это связано с проверкой. Он будет использоваться во время проверки форм при вызове form.is_valid ().

При этом совершенно нормально иметь поле с null = True и blank = False. Это означает, что на уровне базы данных поле может иметь значение NULL, но на уровне приложения это обязательное поле.

Теперь, когда большинство разработчиков ошибаются: определение null = True для строковых полей, таких как CharField и TextField. Избегайте этого. В противном случае у вас будет два возможных значения для «нет данных», а именно: Нет и пустая строка. Наличие двух возможных значений «нет данных» является избыточным. Соглашение Django заключается в использовании пустой строки, а не NULL.

avatar
saran3h
7 сентября 2018 в 07:09
43

У вас может быть свой ответ, однако до сих пор трудно судить, ставить ли в поле null = True или blank = True или и то, и другое. Я лично считаю, что предоставлять разработчикам так много возможностей бесполезно и сбивать с толку. Пусть обрабатывают нули или пробелы, как хотят.

Я следую за этой таблицей, от Две ложки Django : enter image description here <22444525646755>

Table showing when to use null or blank for each field type

Michael Hays
9 марта 2021 в 21:04
2

К вашему сведению, NullBooleanField устарел с Django 3.1 в пользу BooleanField(null=True): docs.djangoproject.com/en/3.1/ref/models/fields/…

avatar
Nitin Nain
18 августа 2018 в 12:10
12

Если вы установите null=True, это позволит установить значение столбца вашей базы данных как NULL. Если вы установите только blank=True, django установит новое значение по умолчанию для столбца, равное "".

Есть одна точка, где null=True будет необходимо даже для CharField или TextField, и это когда в базе данных установлен флаг unique ​​ для столбца. В этом случае вам нужно будет использовать это:

a_unique_string = models.CharField(blank=True, null=True, unique=True)

Предпочтительно пропускать null=True для неуникального CharField или TextField. В противном случае некоторые поля будут установлены как NULL, а другие как "", и вам придется каждый раз проверять значение поля для NULL.

user1600649
1 мая 2021 в 20:24
2

Удивительно, но единственный ответ, который правильно объясняет важность NULL.

avatar
Sonia Rani
14 августа 2018 в 07:39
7

Вот основное различие между null=True и blank=True:

Значение по умолчанию для null и blank равно False. Оба эти значения работают на уровне поля, т.е. хотим ли мы сохранить поле null или blank.

null=True установит значение поля на NULL, т.е. без данных. Это в основном для значения столбца базы данных.

date = models.DateTimeField(null=True)

blank=True определяет, будет ли это поле обязательным в формах. Сюда входят администратор и ваши собственные формы.

title = models.CharField(blank=True) // title can be kept blank. В базе данных будет храниться (""). null=True blank=True Это означает, что поле является необязательным при любых обстоятельствах.

epic = models.ForeignKey(null=True, blank=True)
// The exception is CharFields() and TextFields(), which in Django are never saved as NULL. Blank values a
avatar
Milad Khodabandehloo
16 июля 2018 в 05:15
8
null = True

Означает, что нет ограничений базы данных для поля, которое нужно заполнить, поэтому у вас может быть объект с нулевым значением для заполненного, который имеет этот параметр.

blank = True

Означает, что в формах django нет ограничений на проверку. поэтому, когда вы заполняете modelForm для этой модели, вы можете оставить поле с этой опцией незаполненным.

avatar
Kevin Christopher Henry
1 декабря 2017 в 09:20
90

Важно понимать, что параметры в определении поля модели Django служат (как минимум) двум целям: определение таблиц базы данных, определение формата по умолчанию и проверка форм модели. (Я говорю «по умолчанию», потому что значения всегда можно переопределить, предоставив настраиваемую форму.) Некоторые параметры влияют на базу данных, некоторые параметры влияют на формы, а некоторые влияют на обе.

Когда дело доходит до null и blank, другие ответы уже ясно дали понять, что первое влияет на определение таблицы базы данных, а второе влияет на проверку модели. Я думаю, что различие можно сделать еще яснее, рассмотрев варианты использования для всех четырех возможных конфигураций:

  • null=False, blank=False: это конфигурация по умолчанию и означает, что значение требуется при любых обстоятельствах.

  • null=True, blank=True: это означает, что поле является необязательным при любых обстоятельствах. (Однако, как указано ниже, это , а не рекомендуемый способ сделать строковые поля необязательными.)

  • null=False, blank=True: это означает, что форма не требует значения, а база данных требует. Для этого есть несколько вариантов использования:

    • Чаще всего используется для необязательных строковых полей. Как отмечалось в документации, идиома Django заключается в использовании пустой строки для указания отсутствующего значения. Если бы также было разрешено NULL, вы бы получили два разных способа указать отсутствующее значение.

    • Другая распространенная ситуация состоит в том, что вы хотите автоматически вычислить одно поле на основе значения другого (например, в вашем методе save()). Вы не хотите, чтобы пользователь предоставлял значение в форме (отсюда blank=True), но вы хотите, чтобы база данных обеспечивала постоянное предоставление значения (null=False).

    • Другое использование - когда вы хотите указать, что ManyToManyField является необязательным. Поскольку это поле реализовано как отдельная таблица, а не как столбец базы данных, значение null не имеет смысла. Однако значение blank будет по-прежнему влиять на формы, контролируя, будет ли проверка успешной при отсутствии отношений.

  • null=True, blank=False: это означает, что для формы требуется значение, а для базы данных - нет. Это может быть наиболее редко используемая конфигурация, но для нее есть несколько вариантов использования:

    • Совершенно разумно потребовать от пользователей всегда включать значение, даже если оно на самом деле не требуется вашей бизнес-логикой. В конце концов, формы - это только один из способов добавления и редактирования данных. У вас может быть код, генерирующий данные, который не требует такой же строгой проверки, которая требуется от редактора-человека.

    • Другой вариант использования, который я видел, - это когда у вас есть ForeignKey, для которого вы не хотите разрешать каскадное удаление. То есть при нормальном использовании отношение всегда должно быть (blank=False), но если объект, на который он указывает, оказывается удаленным, вы не хотите, чтобы этот объект также удалялся. В этом случае вы можете использовать null=True и on_delete=models.SET_NULL для реализации простого вида мягкого удаления.

ruslaniv
23 марта 2020 в 16:19
4

Это идеальный ответ, все возможные комбинации объяснены очень лаконично!

avatar
Yuri Kots
11 мая 2017 в 23:58
5

Когда мы сохраняем что-либо в админке Django, происходит двухэтапная проверка: на уровне Django и на уровне базы данных. Мы не можем сохранить текст в числовом поле.

База данных имеет тип данных NULL, это ничего. Когда Django создает столбцы в базе данных, он указывает, что они не могут быть пустыми. И если вы попытаетесь сохранить NULL, вы получите ошибку базы данных.

Также на уровне Django-Admin все поля обязательны по умолчанию, вы не можете сохранить пустое поле, Django выдаст ошибку.

Итак, если вы хотите сохранить пустое поле, вам нужно разрешить его на уровне Django и базы данных. blank = True - разрешит пустое поле в админке null = True - позволит сохранить NULL в столбце базы данных.

avatar
Stryker
1 января 2017 в 21:42
17

Вот пример поля с blank= True и null=True

description = models.TextField(blank=True, null= True)

В этом случае: blank = True: сообщает нашей форме, что можно оставить поле описания пустым

и

null = True: сообщает нашей базе данных, что можно записывать нулевое значение в поле базы данных и не выдавать ошибку.

avatar
Ranju R
11 сентября 2014 в 04:26
31

Просто null=True определяет, что база данных должна принимать значения NULL, с другой стороны, blank=True определяет при проверке формы, что это поле должно принимать пустые значения или нет (если blank=True он принимает форму без значения в этом поле и blank=False [значение по умолчанию] при проверке формы будет отображаться Это обязательное поле ошибка.

null=True/False относится к базе данных

blank=True/False связано с проверкой формы

avatar
Diogo
16 апреля 2014 в 18:54
54

Как сказано в ссылке на поле модели Django: Ссылка

Параметры поля

Следующие аргументы доступны для всех типов полей. Все это необязательно.


null

Field.null

Если True, Django сохранит в базе данных пустые значения как NULL. По умолчанию False.

Избегайте использования null в строковых полях, таких как CharField и TextField, поскольку пустые строковые значения всегда будут храниться как пустые строки, а не NULL. Если строковое поле имеет null=True, это означает, что у него есть два возможных значения для "нет данных": NULL и пустое нить. В большинстве случаев два возможных значения для "нет данных"; соглашение Django заключается в использовании пустой строки, а не NULL.

Как для строковых, так и для нестроковых полей вам также понадобится установить blank=True, если вы хотите разрешить пустые значения в формах, как параметр null влияет только на хранилище базы данных (см. blank).

Примечание

При использовании серверной части базы данных Oracle значение NULL будет сохранено для обозначения пустой строки независимо от этого атрибута


blank

Field.blank

Если True, поле может быть пустым. По умолчанию: False.

Обратите внимание, что это отличается от null. null чисто связано с базой данных, тогда как blank связано с проверкой. Если поле имеет blank=True, проверка формы позволит ввести пустое значение. Если в поле указано blank=False, поле будет обязательным.

avatar
user
16 февраля 2014 в 14:00
140

Вот как ORM сопоставляет поля blank и null для Django 1.8

class Test(models.Model):
    charNull        = models.CharField(max_length=10, null=True)
    charBlank       = models.CharField(max_length=10, blank=True)
    charNullBlank   = models.CharField(max_length=10, null=True, blank=True)

    intNull         = models.IntegerField(null=True)
    intBlank        = models.IntegerField(blank=True)
    intNullBlank    = models.IntegerField(null=True, blank=True)

    dateNull        = models.DateTimeField(null=True)
    dateBlank       = models.DateTimeField(blank=True)
    dateNullBlank   = models.DateTimeField(null=True, blank=True)        

Поля базы данных, созданные для PostgreSQL 9.4 :

CREATE TABLE Test (
  id              serial                    NOT NULL,

  "charNull"      character varying(10),
  "charBlank"     character varying(10)     NOT NULL,
  "charNullBlank" character varying(10),

  "intNull"       integer,
  "intBlank"      integer                   NOT NULL,
  "intNullBlank"  integer,

  "dateNull"      timestamp with time zone,
  "dateBlank"     timestamp with time zone  NOT NULL,
  "dateNullBlank" timestamp with time zone,
  CONSTRAINT Test_pkey PRIMARY KEY (id)
)

Поля базы данных, созданные для MySQL 5.6 :

CREATE TABLE Test (
     `id`            INT(11)     NOT  NULL    AUTO_INCREMENT,

     `charNull`      VARCHAR(10) NULL DEFAULT NULL,
     `charBlank`     VARCHAR(10) NOT  NULL,
     `charNullBlank` VARCHAR(10) NULL DEFAULT NULL,

     `intNull`       INT(11)     NULL DEFAULT NULL,
     `intBlank`      INT(11)     NOT  NULL,
     `intNullBlank`  INT(11)     NULL DEFAULT NULL,

     `dateNull`      DATETIME    NULL DEFAULT NULL,
     `dateBlank`     DATETIME    NOT  NULL,
     `dateNullBlank` DATETIME    NULL DEFAULT NULL
)
Carl Meyer
4 сентября 2014 в 20:01
58

Другими словами, blank не влияет на базу данных, а null определяет, допускает ли столбец базы данных значения NULL. Этот ответ - очень длинный способ сказать это и не дает никакой полезной информации о blank.

user
5 сентября 2014 в 04:49
21

@CarlMeyer: Я хотел посмотреть, как он будет отображаться в базе данных и поделиться им, так как это сэкономит время другим, чтобы сделать то же самое. Теория и пример имеют значение, когда дело доходит до ассимиляции и фиксации в памяти. Фактически, я изо всех сил старался добавить отображение для базы данных, которую я не использовал. Спасибо за отрицательный голос. Очевидно, что количество людей, которые сочли это полезным, с вами не согласны.

Carl Meyer
6 сентября 2014 в 14:26
6

Это может быть полезным ответом, если вы сделаете некоторые общие выводы из представленных данных, но я не думаю, что представление дампа необработанных данных является полезным ответом. В данном случае это на самом деле вводящий в заблуждение ответ, поскольку (без дальнейших комментариев) он подразумевает, что влияние как blank, так и null должно быть отражено в столбцах базы данных, тогда как на самом деле blank влияет только на обработку Python, а не столбцы базы данных. Другие могут проголосовать за, если сочтут это полезным; также возможно, что люди, введенные в заблуждение неверным ответом на , думают, что было полезно.

user
6 сентября 2014 в 14:53
7

Принятый ответ, которому почти 3 года, все подробно объясняет. Нет смысла повторять здесь одну и ту же информацию.