0. установить miniconda
1. простое использование conda
очень просто:
- список всех доступных сред conda:
conda env list
- создание новой среды conda:
conda create --name <my_env_name>
- введите conda env:
conda activate <my_env_name>
или source activate <my_env_name>
- отключите conda env:
conda deactivate
или source deactivate
после ввода condaenv:
- установить пакеты:
conda install <package-name>
в основном с -c <reponame>
с любимыми репозиториями: conda-forge
, anaconda
или в биоинформатике bioconda
(очень актуально) - удалить пакеты по:
conda remove <package-name>
- перечислить все пакеты в этом env по:
conda list
Таким образом, вы увидите, что все очень похоже на virtualenv.
2. поиск команды установки пакета conda
Просто Google conda install <packagename>
, тогда вы найдете в основном anaconda
сайт с правильной командой (-c whatever
) и для каких ОС и версий ...
Тем не менее, пакеты conda в основном не на высшем уровне. Пип больше на высшем уровне. Вы решаете эту проблему, устанавливая pip в conda env.
3. создать среду и установить python и pip
# choose your conda env name
conda create --name <my_django_project>
# enter your conda env
source activate <my_django_project>
# install python, [ipython, jupyter]
conda install -c conda-forge python ipython jupyter
# just leave ipython and jupyter away if you don't want them
# you enforce versions by attaching `=<versionnumber>`
# e.g.
conda install -c conda-forge python=3.8
# however, for my 32-bit computer it suggests 3.7.1
# and I would go with that
# you CAN install python v3.8, but I won't recommend it
# https://anaconda.org/conda-forge/python
# install pip # pip is automatically installed by conda
# when installing python like above.
# conda install -c conda-forge pip
Таким образом, вывод после conda install -c conda-forge python
:
The following packages will be downloaded:
package | build
---------------------------|-----------------
wheel-0.32.3 | py37_0 35 KB
pip-18.1 | py37_0 1.7 MB
python-3.7.1 | h0371630_7 35.9 MB
setuptools-40.6.3 | py37_0 613 KB
------------------------------------------------------------
Total: 38.3 MB
УСТАНОВЛЕНЫ следующие НОВЫЕ пакеты:
_libgcc_mutex: 0.1-main
ca-certificates: 2018.03.07-0
certifi: 2018.11.29-py37_0
libedit: 3.1.20170329-h6b74fdf_2
libffi: 3.2.1-h97ff0df_4
libgcc-ng: 8.2.0-h9268252_1
libstdcxx-ng: 8.2.0-h9268252_1
ncurses: 6.1-he6710b0_1
openssl: 1.1.1a-h7b6447c_0
pip: 18.1-py37_0
python: 3.7.1-h0371630_7
readline: 7.0-h7b6447c_5
setuptools: 40.6.3-py37_0
sqlite: 3.26.0-h7b6447c_0
tk: 8.6.8-hbc83047_0
wheel: 0.32.3-py37_0
xz: 5.2.4-h14c3975_4
zlib: 1.2.11-h7b6447c_3
Таким образом, он автоматически устанавливает pip с python. Поэтому после этой установки у вас также есть pip
для установки в среду conda!
Я пытаюсь найти установку conda нужных пакетов. Только если я не могу получить нужные версии или пакет с помощью conda, я переключаюсь на pip install
в этой среде. Pip, локально установленный в виртуальную среду, будет локально устанавливать все в среду conda. (Кстати, я понимаю, может быть, вы использовали вначале глобальный пункт, а не пункт в вашем виртуальном окружении? Может, в этом была проблема?)
4. установите postgresql в conda env
после ввода conda env, выполните:
conda install -y -c conda-forge postgresql
5. настроить postgresql в django
Источники, которые я использовал: [this] [http://krischer.github.io/jane/setup/index.html#building-the-documentation] и [this] [http://krischer.github.io/jane/setup/index.html#postgresql-setup].
База данных, которую использует django:внутренняя база данных.
сначала инициализируйте внешнюю (базовую) базу данных:
initdb -D db_djangogirls # this is a database physically in your folder
# start postgres by using this db
postgres -D db_djangogirls & # runs postgres
# press RET to send it to background!
в этом состоянии - создайте не суперпользователя
createuser --encrypted --pwprompt djangogirls
# pass '<yourpassword>' 2x
и создайте внутреннююбаза данных
createdb --owner=djangogirls djangogirls_db # this is the name of the inner database and that name of the inner you have to use in `settings.py`!
И это база данных, которую вы должны сообщить django этому пользователю и этому паролю.
Итак, вы устанавливаете settings.py
:
nano mysite/settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'djangogirls_db',
'USER': 'djangogirls',
'PASSWORD': 'djangogirls',
'HOST': 'localhost',
'PORT': '',
}
}
иdo:
python manage.py migrate
Если что-то не работает, вам нужно убить postgres для перезапуска.
# In linux, you monitor servers by:
ps aux | grep postgres
# the line with databasename - the first one - that number you use to kill the process
kill <number>
# e.g. the line
# <yourname> 30453 0.0 0.0 14760 2780 pts/6 S+ 08:36 0:00 grep --color=auto postgres
Но я не знаю, как вы убиваете процесс postgres в Windows. .. (может быть, вы можете добавить, как это сделать в Windows?)
перезапустите postgresql по:
pg_ctl -D db_djangogirls -l logfile start