Django: Difference between revisions

From annawiki
No edit summary
Line 13: Line 13:
Example 3
Example 3
*if changing CharField to Unique the migration maybe does not convert the emty values to None?NULL and then one gets problems like: https://stackoverflow.com/questions/17257031/django-unique-null-and-blank-charfield-giving-already-exists-error-on-admin-p
*if changing CharField to Unique the migration maybe does not convert the emty values to None?NULL and then one gets problems like: https://stackoverflow.com/questions/17257031/django-unique-null-and-blank-charfield-giving-already-exists-error-on-admin-p
==Tutorial==
https://docs.djangoproject.com/en/4.0/intro/tutorial01/
"We’ll assume you have Django installed already. " - linking to https://docs.djangoproject.com/en/4.0/intro/install/ - venv isn't mentioned, but maybe it is better to do that and not pollute the OS.
django-admin startproject mysite
Shouln't it be myproject instead of mysite, if the command is "startproject"?
The command creates:
mysite/
    manage.py
    mysite/
"The outer mysite/ root directory is a container for your project" - really? What if one had that before and performed "django-admin startproject" within that?
"The inner mysite/ directory is the actual Python package for your project." - the other is the container, this one "the actual Python package for your project".
"June 01, 2022 - 15:50:53" - why this weird data format? How about [[ISO 8601]]?
Creating the Polls app
Now that your environment – a “project” – is set up, you’re set to start doing work.
Set up are: 1) a venv 2) "a container for your project" 3) "the actual Python package for your project".

Revision as of 2022-06-14T23:47:15

Models

Migrations

Example 1

  • change model type e.g. Char to Integer : psycopg2.errors.InvalidTextRepresentation: invalid input syntax for type integer: ""
  • alter field name in model ...try to delete field ...errors...
  • to fix, try to rename, remove ... delete col by hand using psql, delete migrations, recreate migration ...
  • problems: stuck in errors psycopg2.errors.DuplicateColumn: column "ccc" of relation "rrr" already exists


Example 2

  • change of field to unique can result in "DETAIL: Key (id....)=() is duplicated."

Example 3

Tutorial

https://docs.djangoproject.com/en/4.0/intro/tutorial01/

"We’ll assume you have Django installed already. " - linking to https://docs.djangoproject.com/en/4.0/intro/install/ - venv isn't mentioned, but maybe it is better to do that and not pollute the OS.

django-admin startproject mysite

Shouln't it be myproject instead of mysite, if the command is "startproject"?

The command creates:

mysite/
   manage.py
   mysite/

"The outer mysite/ root directory is a container for your project" - really? What if one had that before and performed "django-admin startproject" within that?

"The inner mysite/ directory is the actual Python package for your project." - the other is the container, this one "the actual Python package for your project".


"June 01, 2022 - 15:50:53" - why this weird data format? How about ISO 8601?

Creating the Polls app
Now that your environment – a “project” – is set up, you’re set to start doing work.

Set up are: 1) a venv 2) "a container for your project" 3) "the actual Python package for your project".