Я пытаюсь выборочно обработать поле в моем приложении Django / Python в зависимости от того, вошел ли пользователь в систему или нет. В принципе, у меня есть модель, похожая на следующую:
class Resource(models.Model):
uploaded = models.DateTimeField()
name = models.CharField(max_length=200)
description = models.CharField(max_length=500, blank=True)
file = models.CharField(max_length=200)
То, что я хочу сделать, это установить для атрибута файла одно значение, если пользователь вошел в систему (и имеет доступ к этому ресурсу на основе теста с некоторыми серверными правами доступа), и другое значение, если пользователь не авторизован тогда значение resource.file фактически будет истинным URL этого ресурса (включая любые ключи безопасности и т. д. для доступа к этому ресурсу).
Из того, что я прочитал, кажется, что вы можете учесть только вошедшего в систему пользователя, передав его через контекст запроса из функции представления в модель. Однако в приведенном выше случае использования я пытаюсь более тщательно контролировать доступ в модели, не требуя кода клиента для вызова специальной функции.