2012-02-19 3 views
0

Je suis un tutoriel Django et j'ai acheté un abonnement d'un mois à webfaction.com pour pratiquer la programmation web.accès refusé pour python manage.py syncdb

Le tutoriel me dit de taper python manage.py syncdb dans le répertoire de l'application, ce qui pour moi est: D: \ Utilisateurs \ yangs \ Downloads \ Django-1.3.1 \ Django-1.3.1 \ build \ scripts-2.7 \ mysite

Mais je reçois un message d'erreur qui se lit comme suit:

_msql_exceptions.OperationalError: (1045, "Access denied for user 'flammenmeer_'@'c-68-38-119-33.hsd1.nj.comcast.net' (using password: YES)") 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
     'NAME': 'flammenmeer_',     # Or path to database filw 
     'USER': '',        # Not used with sqlite3. 
     'PASSWORD': 'my_password',    # Not used with sqlite3. 
     'HOST': 'flammenmeer.webfactional.com', # Set to empty string for localhost. Not used with sqlite3. 
     'PORT': '',        # Set to empty string for default. Not used with sqlite3. 
     'USER': 'flammenmeer_', 
    } 
} 

quelqu'un peut-il me dire pourquoi je reçois ce message d'erreur? Merci d'avance!

edit: J'ai aussi essayé:

  • web329.webfaction.com pour l'hôte
  • J'ai fait une nouvelle base de données sans le trait de soulignement nommé flammenmeer

Répondre

1

Donc, toutes les bases de webfaction seront nommés [nom du compte] _aname et l'ensemble doit être de moins de 16 caractères . Donc, si votre nom d'utilisateur est "flammenmeer" vous avez déjà 12 caractères utilisés, y compris le trait de soulignement. Donc, pour votre exemple, supposons que vous créez une base de données dans le panneau d'administration nommé "test", votre nom de base de données sera flammenmeer_test. En outre, votre nom d'utilisateur est le même que le nom de la base de données. Et enfin, vous n'avez pas besoin de définir l'hôte, la valeur par défaut localhost suffira.

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': 'flammenmeer_test', 
     'USER': 'flammenmeer_test', 
     'PASSWORD': 'blahblahblah', 
     'HOST': '', 
     'PORT': '', 
    } 
} 

Edité pour fournir des informations sur la façon de fonctionner django sur webfaction, pas l'ordinateur local

Vous ne pouvez pas accéder à une base de données de webfaction externe, sauf si vous payez pour une adresse IP statique. Il semble que vous exécutiez le tutoriel Django sur votre ordinateur local, pas sur Webfaction (basé sur l'emplacement de votre projet étant un lecteur D).

  1. Assurez-vous que vous avez créé une base de données dans le panneau de commande Webfaction avec ce 4 nom de caractère après « flammenmeer_ » que vous voulez, un exemple serait « flammenmeer_test »

  2. Download Putty (la première "Putty.exe" lien sur cette page)

  3. Dans Putty, connectez-vous à flammenmeer @ [nom de l'ordinateur] .webfaction.com (nom de machine serait quelque chose comme "web312" et sera la même machine que vous avez créé le Votre produit final pourrait ressembler à [email protected]

  4. Installer Django sur votre compte webfaction

    • Type « easy_insall-2.7 django »
  5. Créez un répertoire pour vos scripts django

    • type "mkdir scripts"
    • type "scripts cd"
  6. Créer un nouveau Django Project

    • Tapez "python2.7 ~/lib/python2.7/dj" Ango/bin/django-admin.py startproject ruhemeer "
    • Tapez "cd ruhemeer"
  7. Modifier vos paramètres (vous allez vouloir apprendre VIM

    • type" Paramètres de vim. py »
    • Hit la lettre « i » pour entrer modifier/mode d'insertion
    • Utilisez les touches fléchées pour accéder aux paramètres de base de données et modifier les paramètres
    • Hit "Esc" pour quitter le mode modification/insertion
    • type ": wq [enter]"
  8. Carry avec Django Tutoriel :)

espoir qui aide.

+0

Merci pour la réponse. J'ai essayé de créer une base de données avec le nom "Flammenmeer_test" mais je reçois toujours le même message d'erreur. Comment manage.py sait où mon application est hébergée? –

+0

Je vais modifier ma réponse avec plus de détails ... – bwooceli

+0

Ok, donc j'ai creusé et j'ai découvert que je pouvais utiliser le SSH? pour accéder à mes données. Je suis arrivé au répertoire nommé "myproject" et je veux accéder à settings.py pour pouvoir le modifier avec toutes les informations. Comment puis-je ouvrir le fichier à éditer? –

0

Parce que, les informations pour connecter la base de données ne sont pas corrects. il suffit de vérifier à temps plus.

Êtes-vous sûr qu'il ya un trait de soulignement à la fin du nom d'utilisateur, il semble un peu bizarre

+0

Je suis sûr de tout, sauf HOST. J'ai fait une base de données nommée flammenmeer_ et il a dit qu'ils ont créé un utilisateur pour la base de données nommée "flammenmeer_". Donc, je suppose que c'est la même chose pour le nom de la base de données et le nom d'utilisateur. Le port est-il nécessaire pour quelque chose comme ça? –

+0

Ok, mais avez-vous accorder l'accès à la base de données à l'utilisateur? – lpostula

+0

oui, après que je crée une base de données, il dit: base de données MySQL "flammenmeer_" a été créé. L'utilisateur "flammenmeer_" a été créé (mot de passe par défaut "blahblahblah" et a le droit de travailler sur la nouvelle base de données –

0

Vous ne pouvez pas accéder à votre serveur de base de données Webfaction à partir de votre ordinateur Windows, ce qui explique pourquoi vous rencontrez ces problèmes.

Pour vous entraîner avec django, vous n'avez pas besoin d'un serveur de base de données ou d'un serveur Web.

D'abord, installez django. Puisque vous êtes sur Windows, utilisez this link pour télécharger un programme d'installation Windows pour django. Installez-le comme vous le feriez pour n'importe quel autre programme Windows.

Maintenant, pour commencer votre projet:

  1. Ouvrez l'invite de commande. Tapez la touche Windows + R pour afficher l'invite Exécuter, tapez cmd et appuyez sur Entrée.

  2. Créez un répertoire dans lequel vous souhaitez travailler. Par exemple, mkdir c:\work

  3. changement dans ce répertoire cd work de sorte que votre message est C:\work>

  4. Type de python C:\Python27\Scripts\django-admin.py startproject myproject

Cela va créer le répertoire myproject sous work.

Modifier fichier settings.py et effectuez les modifications suivantes à DATABASES:

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
     'NAME': 'test.db',      # Or path to database file if using sqlite3. 
     'USER': '',      # Not used with sqlite3. 
     'PASSWORD': '',     # Not used with sqlite3. 
     'HOST': '',      # Set to empty string for localhost. Not used with sqlite3. 
     'PORT': '',      # Set to empty string for default. Not used with sqlite3. 
    } 
} 

Travailler sous Windows, il est utile d'avoir un IDE. PyCharm est mon préféré. C'est un IDE Python pour Windows qui inclut un excellent support pour django. Vous pouvez télécharger un essai gratuit.

Une fois l'installation terminée, ouvrez simplement le répertoire myproject depuis l'EDI.

Questions connexes