Skip to content
Snippets Groups Projects
  • root's avatar
    3fc34651
    migration to python3.6 and django 2.1 · 3fc34651
    root authored
    Status:
      it is possible to set up application (in the venv) create database: ./manage.py migrate
      and to start it ./manage.py runserver 0.0.0.0:8000
      Many incompatibility issues were fixed, however, there are many more.
    
    TODO:
      gunicorn -> https://pypi.org/project/gunicorn/ shows systemd config, should be used
      celery -> doesn't work at all now
      tasks.py - commented out because of import error, it is related to celery
      registration - API must be studied, it was changed and there are some incompatibilities
      translation - setlan/ django.conf.urls.i18n - this was not tested, maybe it doesn't work
      old migrations - all migration files were moved into backup; new initial
    	migrations were created (because old ones import south which is not supported
    	any more); the current migrations are missing default values such as protocols,
    	thenactions, ...
    3fc34651
    History
    migration to python3.6 and django 2.1
    root authored
    Status:
      it is possible to set up application (in the venv) create database: ./manage.py migrate
      and to start it ./manage.py runserver 0.0.0.0:8000
      Many incompatibility issues were fixed, however, there are many more.
    
    TODO:
      gunicorn -> https://pypi.org/project/gunicorn/ shows systemd config, should be used
      celery -> doesn't work at all now
      tasks.py - commented out because of import error, it is related to celery
      registration - API must be studied, it was changed and there are some incompatibilities
      translation - setlan/ django.conf.urls.i18n - this was not tested, maybe it doesn't work
      old migrations - all migration files were moved into backup; new initial
    	migrations were created (because old ones import south which is not supported
    	any more); the current migrations are missing default values such as protocols,
    	thenactions, ...
models.py 1.41 KiB
# -*- coding: utf-8 -*- vim:fileencoding=utf-8:
# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab

# Copyright (C) 2010-2014 GRNET S.A.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#

from django.db import models
from django.contrib.auth.models import User
from peers.models import Peer


class UserProfile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    peers = models.ManyToManyField(Peer, related_name='user_profile')

    class Meta:
        permissions = (
            ("overview", "Can see registered users and rules"),
        )

    def username(self):
        return "%s" % (self.user.username)

    def __unicode__(self):
        return self.username()

    def get_address_space(self):
        networks = self.domain.networks.all()
        if not networks:
            return False
        return networks