Installation Creme 1.6 sousLinux.
#1
Bonsoir,
depuis tout à l'heure, je tente désespérement d'installer Creme 1.6 sur mon ordinateur (Ubuntu 16.04 LTS 64bits) en utilisant le tutoriel écrit pour la version 1.5.
Je bloque à un endroit et ni les recherches effectuées sur le site de Django ni sur celui de Creme ne m'ont permis de continuer.

Tout se passe bien jusqu'à la commande :
Code :
python manage.py syncdb

Voici le resultat de la commande :
Code :
/home/parents/Envs/creme/local/lib/python2.7/site-packages/mediagenerator/utils.py:7: RemovedInDjango19Warning: django.utils.importlib will be removed in Django 1.9.
  from django.utils.importlib import import_module
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute_from_command_line
    utility.execute()
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 346, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/core/management/base.py", line 394, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/core/management/base.py", line 444, in execute
    self.check()
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/core/management/base.py", line 482, in check
    include_deployment_checks=include_deployment_checks,
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/core/checks/registry.py", line 72, in run_checks
    new_errors = check(app_configs=app_configs)
  File "/home/parents/creme_crm-1.6/creme/creme_core/checks.py", line 62, in check_uninstalled_apps
    .values_list('app_label', flat=True)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/models/query.py", line 162, in __iter__
    self._fetch_all()
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/models/query.py", line 965, in _fetch_all
    self._result_cache = list(self.iterator())
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/models/query.py", line 1217, in iterator
    for row in compiler.results_iter():
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 794, in results_iter
    results = self.execute_sql(MULTI)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 840, in execute_sql
    cursor.execute(sql, params)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/utils.py", line 98, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 124, in execute
    return self.cursor.execute(query, args)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute
    self.errorhandler(self, exc, value)
  File "/home/parents/Envs/creme/local/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
    raise errorclass, errorvalue
django.db.utils.ProgrammingError: (1146, "Table 'bdcremecrm.django_content_type' doesn't exist")

Or, si une base a bien été créée lors des étapes précédentes, je n'ai nulle part trouvé d'endroit où sa structure de table serait créée (le tuto se contentant de créer la base et l'utilisateur).

Pourriez-vous m'aider ?
  Répondre
#2
Bonsoir

la commande 'syncdb' est obsolète à partir de Creme1.6/Django1.8 ; donc ne la lancez pas, et passez directement à la commande 'migrate' (qui créé les tables dans la base de donnée).
Le reste du tutoriel reste correct je pense.

En espérant que vous vous en sortiez.
  Répondre
#3
Merci. C'est installé.
J'aurais 2 questions supplémentaires :
  1. Il est écrit en fin de tuto que l'installation obtenue est une installation de dev. Quelle est la procédure pour obtenir une installation de prod (sachant que c'est une installation mono-poste / Mono utilisateur) ?
  2. Je constate qu'il est possible d'importer (via CSV) des sociétés mais j'aimerais surtout importer des produits. Est-ce possible sans passer par du requetage SQL ?

D'avance merci.
  Répondre
#4
Citation :Il est écrit en fin de tuto que l'installation obtenue est une installation de dev. Quelle est la procédure pour obtenir une installation de prod (sachant que c'est une installation mono-poste / Mono utilisateur) ?

Mon collègue est un peu surchargé et n'a donc jamais pris le temps de faire un tutoriel sur comment déployer avec Apache ou Nginx ; après Creme reste une webapp Django, donc de tels tutoriels existent déjà sur Internet.
Dans le cas d'une utilisation mono-poste, garder le serveur de développement est tout à fait acceptable ; c'est juste que ce n'est pas optimal (mais c'est potentiellement très peu perceptible, les performances de votre browser sont sûrement plus critiques au final).

Citation :Je constate qu'il est possible d'importer (via CSV) des sociétés mais j'aimerais surtout importer des produits. Est-ce possible sans passer par du requetage SQL ?

L'import CSV est fait pour les Contacts, Sociétés, Tickets, Activités, Opportunités , Facture/Devis/Bons. Globalement quasiment tout le travail est déjà fait pour les autres types de fiches, mais il faut prendre le temps de le faire/tester. Ce qui n'a pas été fait pour les Produits, car aucun utilisateur ne l'avait déjà demandé (il n'y en a sûrement que pour quelques heures de travail). Je le rajouterai sûrement, mais ça sera dans la future version 1.7 .

Je vous déconseille fortement de le faire en SQL, car les entités sont découpées en 2 partie (une partie entités générique, et la partie spécifique au type) et donc il serait facile de faire des bêtises. Si vous devez le faire je vous conseille de faire une moulinette en Python ; vous pouvez prendre exemple dans le fichier creme/creme_core/management/base.py qui fournit un squelette pour une telle moulinette d'import CSV.
  Répondre
#5
Merci pour ces réponses.
  Répondre


Atteindre :


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