Como pano de fundo, acabei de começar a estudar MongoDB e tenho um pouco de conhecimento de Django.
É mais como uma nota de estudo para me ajudar a lembrar como concluí cada etapa.
Eu uso Django + MongoDB + Django MongoDB Engine
E <a href=” http://django-mongodb-engine.readthedocs.org/en/latest/tutorial.html”> este é o tutorial que segui para criar um blog de usuário único aplicativo. </a> Mas depois que eu comecei a configuração, descobri que este bloco só pode cobrir a parte de instalação e configuração …
Para instalar e configurar o MongoDB, utilizo <a href=” http://www.mkyong.com/mongodb/how-to-install-mongodb-on-mac-os-x/”> este tutorial </a>. Eu acho que é mais detalhado do que o oficial
1. instalar pip
Não sei por que não instalei antes … Aqui estão as <a href=” http://www.pip-installer.org/en/latest/installing.html”> etapas </ a > Segui para instalar o pip
Mas preciso adicionar “sudo” antes dos comandos para obter permissão
Seguem alguns passos muito importantes … Eu errei no começo e demorei muito para descobrir o porquê! Quase me deixa louco …
2. instale o Django MongoDB Engine:
Seguindo o <a href=” http://django-mongodb-engine.readthedocs.org/en/latest/topics/setup.html”> tutorial de configuração </a>
a: instalar virtualenv
$sudo pip install virtualenv
b: Eu gostaria de criar o projeto Django primeiro. Porque vamos usar isso mais tarde.
Mude para o diretório de destino e insira
$django-admin.py startproject myproject
Isso criará uma pasta chamada “myproject” e sob essa pasta existem alguns arquivos python. Um deles é denominado settings.py, o outro é manage.py.
NÃO pule as etapas c e d para instalar os seguintes pacotes python! Pular essas duas etapas foi um erro que cometi e tornou a configuração do Django MongoDB Engine tão chata … Eu não tinha ideia do que é virtualenv quando comecei a instalar o Engine, agora tenho uma ideia melhor para que serve.
c: Configure um ambiente virtual para “myproject”,
Não dentro da pasta “myproject”, mas no contêiner da pasta “myproject”, use:
$virtualenv myproject
Isso inicializará a pasta myproject com o pacote do site python e algo essencial.
Ele criará as pastas / bin, / lib etc ….
d: Ative-o use:
$source myproject/bin/activate
e: Verifique se o ambiente virtual está ativo agora! e, em seguida, instale Djang_nonrel e caixa de ferramentas e esse mecanismo.
$sudo pip install git+https://github.com/django-nonrel/django@nonrel-1.3
$sudo pip install -U git+https://github.com/django-nonrel/djangotoolbox/@toolbox-1.3
$pip install git+https://github.com/django-nonrel/mongodb-engine@mongodb-engine-1.3
3. Configure o banco de dados Django:
Em settings.py (/myproject/settings.py) encontre BASES DE DADOS e faça as alterações conforme abaixo.
DATABASES = {
'default' : {
'ENGINE' : 'django_mongodb_engine',
'NAME' : 'my_database'
}
}
4.Create my_database
no terminal, para iniciar a entrada do servidor MongoDB
$mongod
para iniciar o shell do banco de dados em outra janela de terminal, insira
$mongo
no shell do banco de dados, para criar e mudar para a entrada my_database:
use my_database
5. Teste:
under the "myproject" folder, where manage.py locates, try
$python manage.py runserver
Se você vir isso:
Validating models...
0 errors found
Django version 1.3.7, using settings 'myproject.settings'
Development server is running at http://127.0.0.1:8080/
Viva! sucesso!
Mas você também pode ver alguns outros erros como o que eu experimentei … Frustração.
1.Se você ver a mensagem de erro, como ‘django mongodb engine’ não é um backend de banco de dados disponível .. Nenhum módulo chamado utils “.
Isso pode ser causado pela não ativação do ambiente. ou se você ativá-lo, mas ainda vir esta mensagem, a versão da caixa de ferramentas não está correta. Certifique-se de que sua versão seja 1.3. Depois de reinstalar a caixa de ferramentas, ela funciona!
2. Você também pode ver isto: “ImportError: Nenhum módulo denominado core.management”
No meu caso, ao ativar o ambiente virtual, verei esta mensagem. Vá para /myproject/lib/python2.7/site-packages (você pode usar uma versão diferente do python) se você não conseguiu encontrar django, django mongodb engine, djangotoolbox, o que provavelmente significa que quando você instala esses pacotes, você não está ativando o ambiente virtual! Esse é o erro que cometi durante o setuo. Eu também não consigo importar django enquanto estou neste ambiente virtual.
Mas provavelmente você tem outros motivos além do meu, <a href=” http://stackoverflow.com/questions/6049933/django-import-error-no-module-named-core-management”> este é um estouro de pilha relacionado perguntas e respostas </a> acho que podem ser úteis.
BTW, a primeira linha no meu manage.py é
#!/usr/bin/env python
Eu não mudei.
Essas são quase todas as etapas e problemas que encontrei durante a configuração.
Se você for novato como eu, espero que isso seja útil ~
Eu preciso fazer uma pausa agora ~~~~