Erreur 500 à la connexion
#1
Bonjour,

je viens d'installer crème, qui semble s'être bien passé.

mais a l a connexion, il semble que des tables n'ont pas été créer Confused


Code :
File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/cursors.py", line 315, in _query
   db.query(q)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/connections.py", line 239, in query
   _mysql.connection.query(self, query)
django.db.utils.ProgrammingError: (1146, "Table 'bdcremecrm.django_session' doesn't exist")
[31/Aug/2020 14:55:20] SERVER: "GET /static_media/common/images/favicon-e41be60abc5ebb842ee87b442a71345c5a720ded.ico HTTP/1.1" 500 4256
 
est ce que quelqu'un peut m'aider ?

Merci
  Répondre
#2
Bonjour,

Comme l'erreur l'indique la table des sessions semble ne pas exister. Elle aurait du être créée lorsque vous avez exécuté la commande "python manage.py migrate" ; si vous explorez votre base MySQL (que vous avez appelée "bdcremecrm"), avec PHPmyadmin par exemple, y a-t-il des tables ?

PS: je déplacerai ce sujet dans 'Questions' où il aura plus sa place.
  Répondre
#3
Bonjour,
merci pour votre réponse, j'avais déjà regardé, il y a bien des tables, mais effectivement celle-ci n'as pas été créer.

il faudrait que je relance un migrate, mais il me dit que des des tables existent déjà.

Qu'est ce que j'ai oublié ? Confused

ai-je mal suivi la procédure d'installation ? Undecided 

merci pour votre aide

ps: merci pour le déplacement du sujet dans le bon fils
  Répondre
#4
Je viens de supprimer les tables pour refaire une migration


Code :
System check identified some issues:

WARNINGS:
?: (mysql.W002) MySQL Strict Mode is not set for database connection 'default'
       HINT: MySQL's Strict Mode fixes many data integrity problems in MySQL, such as data truncation upon insertion, by escalating warnings into errors. It is strongly recommended you activate it. See: https://docs.djangoproject.com/en/2.2/ref/databases/#mysql-sql-mode
Operations to perform:
 Apply all migrations: activities, assistants, auth, billing, commercial, contenttypes, creme_config, creme_core, crudity, documents, emails, events, geolocation, graphs, opportunities, persons, products, projects, recurrents, reports, sessions, tickets
Running migrations:
 Applying creme_core.0001_initial...Traceback (most recent call last):
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/utils.py", line 82, in _execute
   return self.cursor.execute(sql)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/mysql/base.py", line 71, in execute
   return self.cursor.execute(query, args)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/cursors.py", line 209, in execute
   res = self._query(query)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/cursors.py", line 315, in _query
   db.query(q)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/connections.py", line 239, in query
   _mysql.connection.query(self, query)
MySQLdb._exceptions.OperationalError: (1071, 'Specified key was too long; max key length is 767 bytes')

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
 File "manage.py", line 10, in <module>
   execute_from_command_line(sys.argv)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
   utility.execute()
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/core/management/__init__.py", line 375, in execute
   self.fetch_command(subcommand).run_from_argv(self.argv)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/core/management/base.py", line 323, in run_from_argv
   self.execute(*args, **cmd_options)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/core/management/base.py", line 364, in execute
   output = self.handle(*args, **options)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/core/management/base.py", line 83, in wrapped
   res = handle_func(*args, **kwargs)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/core/management/commands/migrate.py", line 234, in handle
   fake_initial=fake_initial,
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/migrations/executor.py", line 117, in migrate
   state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
   state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/migrations/executor.py", line 245, in apply_migration
   state = migration.apply(state, schema_editor)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/migrations/migration.py", line 124, in apply
   operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/migrations/operations/models.py", line 92, in database_forwards
   schema_editor.create_model(model)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/base/schema.py", line 307, in create_model
   self.execute(sql, params or None)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/base/schema.py", line 137, in execute
   cursor.execute(sql, params)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/utils.py", line 67, in execute
   return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/utils.py", line 76, in _execute_with_wrappers
   return executor(sql, params, many, context)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/utils.py", line 84, in _execute
   return self.cursor.execute(sql, params)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/utils.py", line 89, in __exit__
   raise dj_exc_value.with_traceback(traceback) from exc_value
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/utils.py", line 82, in _execute
   return self.cursor.execute(sql)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/django/db/backends/mysql/base.py", line 71, in execute
   return self.cursor.execute(query, args)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/cursors.py", line 209, in execute
   res = self._query(query)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/cursors.py", line 315, in _query
   db.query(q)
 File "/home/cintranet/venv_creme/lib/python3.5/site-packages/MySQLdb/connections.py", line 239, in query
   _mysql.connection.query(self, query)
django.db.utils.OperationalError: (1071, 'Specified key was too long; max key length is 767 bytes')


je suis sur Maria DB

merci pour votre aide Big Grin
Christophe
  Répondre
#5
Bonjour,

Citation :Je viens de supprimer les tables pour refaire une migration

J'espère que vous avez supprimé toute la base plutôt que juste les tables, histoire de bien supprimer les contraintes aussi (MySQL n'est pas très rigoureux là dessus et nous a souvent fait la surprise de garder des contraintes relatives à des choses qui n'existent plus...).


Citation :je suis sur Maria DB

OK mais quel OS et en quelle version ? Je vois que vous utilisez Python3.5 ; Creme2.1 le gère (mais Creme 2.2 qui sortira dans quelque mois est passé à Python 3.6 minimum) mais on est sur quelque chose d'ancien (pour info la debian stable sortie il y a un an est sur Python3.7, mon Ubuntu 18.04 était déja en Python 3.6). Ce n'est pas un problème pour Python, mais peut-être pour MariaDB -- surtout avec le message d'avertissement contenu dans ce que vous avez posté:  "(mysql.W002) MySQL Strict Mode is not set for database connection 'default'...."

Code :
Running migrations:
 Applying creme_core.0001_initial...


Je suis étonné que la première migration qui est lancée soit "creme_core.0001_initial" car cette migration dépend d'autre migration. Si je créé les tables sur une base fraîche chez moi j'ai :

Code :
python manage.py migrate
Operations to perform:
 Apply all migrations: activities, assistants, auth, billing, commercial, contenttypes, creme_config, creme_core, crudity, documents, emails, events, geolocation, graphs, mobile, opportunities, persons, polls, products, projects, recurrents, reports, sessions, sms, tickets
Running migrations:
 Applying contenttypes.0001_initial... OK
 Applying contenttypes.0002_remove_content_type_name... OK
 Applying auth.0001_initial... OK
 Applying creme_core.0001_initial... OK
 Applying tickets.0001_initial... OK
 Applying tickets.0005_v2_1__move_description_to_entity_1... OK
 Applying recurrents.0001_initial... OK
 Applying recurrents.0006_v2_1__move_description_to_entity_1... OK
 Applying documents.0001_initial... OK
 Applying persons.0001_initial... OK
 Applying activities.0001_initial... OK
 Applying projects.0001_initial... OK
[...]

Est-ce parce que vous aviez laissé les tables de 'contenttypes' & 'auth' ? (sinon je ne vois pas, vu que les apps sont bien présentes dans la liste donné après le "Apply all migrations:").

Dernière remarque: avez-vous essayé avez SQLite (même si vous ne gardez pas ça à long terme) ou PostGreSQL ?
  Répondre
#6
Merci pour votre aide...

en effet, je n'ai supprimer que les tables  Confused

je suis en debian 9

j'ai directement essayé avec mysql...

je retente expérience en SQLLite et vous dit quoi Wink

merci encore
Christophe
  Répondre
#7
Bonjour,

Juste pour vous remercier de votre aide et vous informer que j'ai réussit pour le moment avec sqlite3.

on va tester et ensuite migrer vers mysql

merci encore
a bientôt
Christophe
  Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)