Создание оператора if, который проверяет значение объекта и впоследствии присваивает значение другому объекту. - PullRequest
0 голосов
/ 20 февраля 2020
from django.conf import settings
from django.db import models
from django.utils import timezone


class Post(models.Model):
  author = models.ForeignKey(settings.AUTH_US>
  title = models.CharField(max_length=200)
  text = models.TextField(blank=True)
  created_date = models.DateTimeField(default>
  published_date = models.DateTimeField(blank>
  ARCHEOLOGY='Archeology'
  CRIME='Crime'
  EDUCATION='Education'
  IMMIGRATION='Immigration'
  CONFLICTS='Conflicts'
  DISASTER='Disaster'
  ENVIRONMENT='Environment'
  RELIGION='Religion'
  SCANDALS='Scandals'
  MUSICNEWS='Music News'
  CELEBRITYNEWS='Celebrity News'
  WILDNATURE='Wild Nature'
  NATURALSCIENCE='Natural Science'
  US ='U.S.'
  OPINION='Opinion'
  ENTERTAINMENT='Entertainment'
  SCIENCE='Science'
  WORLD='World'
news_categories = [
 (ARCHEOLOGY, 'Archeology'),
 (CELEBRITYNEWS,'Celebrity News'),
 (CONFLICTS,'Conflicts'),
 (CRIME,'Crime'),
 (DISASTER,'Disaster'),
 (EDUCATION,'Education'),
 (ENVIRONMENT,'Environment'),
 (IMMIGRATION,'Immigration'),
 (MUSICNEWS,'Music News'),
 (NATURALSCIENCE,'Natural Science'),
 (RELIGION,'Religion'),
 (SCANDALS,'Scandals'),
 (WILDNATURE,'Wild Nature'),]
category = models.CharField(
 max_length=15,
 choices=news_categories,
 default=ARCHEOLOGY,
)


ssubcategory=[
 (WORLD,'World'),
 (US,'U.S.'),
]
subcategory= models.CharField(
 max_length=15,
 choices=ssubcategory,
 default=US,
)
def whoops(self,):
 if self.category==RELIGION:
  self.subcategory=WORLD
  return self.subcategory

def publish(self):
    self.published_date = timezone.now()
    self.save()

def __str__(self):
    return self.title

У меня есть этот код, который делает раскрывающийся список и назначает значение в качестве категории при создании сообщения.

Как мне сделать переменную для хранения нескольких вариантов из этого списка как другое значение?

По существу каждый элемент в списке ссылается на страницу, заполненную сообщениями, содержащими эту категорию (криминал, религия и т. д. c ..).

Но как бы я сделал объект называется внешней категорией, которая выбирается при выборе категории (т. е. когда я выбираю религию в качестве категории для сообщения, я хочу, чтобы она автоматически добавляла себя в другую категорию, называемую миром

. заявление?

(If 'catergory'=='religion: 'outercategory'='world'

Но, похоже, это не работает для меня.

...