Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Aug 4, 2021. It is now read-only.

jedie/PyLucid

Repository files navigation

not maintained

PyLucid is currently not under active development!

about PyLucid

PyLucid is an Open Source web content management system written in Python using Django-CMS.

It's more a alternative for djangocms-installer

The goal is to simplify the Django-CMS setup.

PyLucid delivers ready-to-use compiled Twitter Bootstrap v4 (Licensed under MIT) with some simple templates directly.

PyLucid is licensed under GNU General Public License v3 or later (GPLv3+)

Try, fork and contribute! ;)

install

1. bootstrap PyLucid virtualenv

# download bootstrap file:
/home/FooBar$ wget https://github.com/jedie/PyLucid/raw/master/pylucid/pylucid_boot.py
# Create virtualenv with all needed packages:
/home/FooBar$ python3 pylucid_boot.py boot ~/PyLucid-env

2. use the created PyLucid virtualenv

# Go into created virtualenv:
/home/FooBar$ cd ~/PyLucid-env
# activate the env:
~/PyLucid-env $ source bin/activate
# Start the interactive admin shell:
(PyLucid-env) ~/PyLucid-env $ pylucid_admin
pylucid_admin.py shell v3.0.0
Type help or ? to list commands.
pylucid_admin.py>

3. create a page instance

A page instance is a django project with own settings, for easy start a own web page. Create a page instance in the interactive admin shell:

pylucid_admin.py> create_page_instance ~/page_instance you_project_name
...
pylucid_admin.py> quit
# Go into created page instance
(PyLucid_env) ~/PyLucid_env $ cd ~/page_instance/
# Create cache tables
(PyLucid_env) ~/page_instance $ ./manage.py createcachetable
# init database
(PyLucid_env) ~/page_instance $ ./manage.py migrate
# Create a super user
(PyLucid_env) ~/page_instance $ ./manage.py createsuperuser
# Copies all static files together:
(PyLucid_env) ~/page_instance $ ./manage.py collectstatic
# run developer server:
(PyLucid_env) ~/page_instance $ ./manage.py runserver

update

A general overview:

  • update environment
  • migrate database
  • collect static files
  • Update you own templates/styles (not always needed)

Looks like this:

# Go into created virtualenv:
/home/FooBar$ cd ~/PyLucid-env
# activate the env:
~/PyLucid-env $ source bin/activate
# Start the interactive admin shell and update environment:
(PyLucid-env) ~/PyLucid-env $ pylucid_admin
pylucid_admin.py shell v3.0.0
Type help or ? to list commands.
pylucid_admin.py> update_env
...
pylucid_admin.py> quit
# Go into created page instance
(PyLucid_env) ~/PyLucid_env $ cd ~/page_instance/
# init database
(PyLucid_env) ~/page_instance $ ./manage.py migrate
# Copies all static files together:
(PyLucid_env) ~/page_instance $ ./manage.py collectstatic

Note: Check 'Backward-incompatible changes' below!

further information

run test project

You can run a test project with the django developer server:

(PyLucid-env) ~/PyLucid-env $ pylucid_admin run_test_project_dev_server

bootstrap manually

Note: You can install PyLucid manually via PyPi package:

  • create virtualenv
  • install pylucid via pip from PyPi
  • run pylucid_admin update_env

pylucid_boot.py - interactive shell

pylucid_boot.py is a interactive shell with command completion. You can just start it and do this:

/home/FooBar$ python3 pylucid_boot.py
pylucid_boot.py shell v0.2.0
Type help or ? to list commands.
pylucid_boot.py> ?
Hint: All commands can be called directly from commandline.
e.g.: $ ./pylucid_boot.py help
Use <tab> to command completion.
Documented commands (type help <topic>):
========================================
boot boot_developer help quit

pylucid_admin.py - interactive shell

pylucid_admin.py is a interactive shell with command completion, e.g.:

(PyLucid_env) ~/PyLucid_env $ pylucid_admin
Activated virtualenv detected: '/home/foobar/PyLucid-env' (/home/foobar/PyLucid-env/bin/python3)
pylucid_admin.py shell v0.2.0
Type help or ? to list commands.
pylucid_admin.py> ?
Hint: All commands can be called directly from commandline.
e.g.: $ ./pylucid_admin.py help
Use <tab> to command completion.
Documented commands (type help <topic>):
========================================
change_editable_address pip_freeze run_test_project_dev_server
create_page_instance pytest update_env
help quit upgrade_requirements

External applications configuration

Dependency applications may need configuration to work properly.

Please, refer to each application documentation on details.

Backward-incompatible changes

On every update: Run the steps from section 'update': see above.

v3.1 to v3.2

update your page instance urls.py e.g.:

- url(r'^admin/', include(admin.site.urls)),
+ url(r'^admin/', admin.site.urls),

v3.0 to v3.1

Twitter bootstrap updated from v3 to v4: update you own templates/styles.

v2.1 to v3.0

Create a new, fresh PyLucid environment and a new page instance. See "install" section above. Transfer settings e.g.: Database connection information.

Just run "migrations" and "collectstatic" and update you own templates/styles.

Older changes are here: https://www.pylucid.org/de/blog/tag/backward-incompatible/

Compatible Matrix

PyLucid Django-CMS Django Python
v3.2 V3.7 V2.2 LTS 3.6, 3.7, 3.8
v3.0 V3.4 LTS V1.11 LTS 3.5, 3.6
v2.1 v3.3 v1.8 LTS 3.4, 3.5
v2.0 v3.2 v1.8 LTS 3.4, 3.5
<=v1.6 - v1.6 2.6, 2.7

Release History

(Not all old releases are listed.)

For older PyLucid history, look at:

donation

links

Sourcecode @ GitHub github.com/jedie/PyLucid
Python Package Index pypi.org/project/PyLucid/

About

PyLucid is ready to use Django-CMS setup

Topics

Resources

License

Stars

Watchers

Forks

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /