Git Product home page Git Product logo

django_upgrade_video's Introduction

Example Repo for Upgrading Django Apps

This repo contains information about upgrading your Django application from Django 1.8 to Django 1.11, and from Django 1.11 to Django 2.2. Those are all long term support (LTS) releases.

Please also take a look at this YouTube Video for more information.

Example Application

As an example application, we prepared a very basic ticket system, which allows creating aswell as editing tickets. Tickets have a title, a description, a state, and can be assigned to any number of users. Each user has their individual "My Tickets" page.

Each ticket can be commented on by users.

This example application makes use of Foreign Keys, Many-To-Many Fields, template tags, middlewares, views, etc... - a typical Django app.

for more information about the application (e.g., installation instructions), please take a look at docs/app.md.

Branches

Please take a look at the following branches:

  • django18 - contains the app the way it used to be with Django 1.8
  • django18_to_111 - contains all commits for upgrading from 1.8 to 1.11
  • master - ongoing development

The process of upgrading

Of course, there are many features of Django that have changed over the years. But with this little example application we are trying to cover the most basic ones, especially those that will affect almost everybody.

As a good starting point, I recommend reading Upgrading Django on the official Django Project website. Other then that, I recommend reading the release notes of new Django releases. They usually have a section called Backwards incompatible changes as well as a section called Breaking changes (or Features removed).

Another good resource is the Django Deprecation Timeline, which contains several features that already have been deprecated, but also those that will be deprecated in the future.

It is recommended to only upgrade to the next LTS (Long Term Support) version of Django. Make sure to take a look at the Django Download Page for a good overview of which release has long term support.

Upgrading Django 1.8 to 1.11

See docs/upgrade_18_to_111.md.

Upgrading Django 1.11 to 2.2

As 2.2 has not been released, we will only cover preparations here.

Basically, what we can cover is upgrading from 1.11 to 2.0, which is written down in docs/upgrade_111_to_20.md.

Docker Setup

See docs/docker.md for information about the docker setup.

django_upgrade_video's People

Contributors

christiankreuzberger avatar geoffmahugu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

django_upgrade_video's Issues

Current Python Docker image does not work

The current docker image throws up an error in the entrypoint.sh script where it tries to create a new user.

An update of the image from python:3.5-slim to python:3.6.10-slim-stretch solves the issue

running the prod version failed

the docker-compose fails to run the python service with prod.yml
exited with this error:
python_1 | Update user 'user'
python_1 | usermod: user root is currently used by process 1
python_1 | usermod: group 'user' does not exist
python_1 | Running command 'gunicorn -w 4 tickets.wsgi -b 0.0.0.0:8000'
python_1 | No passwd entry for user 'user'
django_upgrade_video_python_1 exited with code 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.