Skip to content

Instantly share code, notes, and snippets.

Avatar

Abirafdi Raditya Putra abirafdirp

View GitHub Profile
View gist:abceb1efed936ab1c8db93e63a6ceed7
from django.db import models
class S3PrivateFileField(models.FileField):
"""
Using this for local storage is also viable since it's only an
instance attribute, which is not used in local storage.
"""
def __init__(self, verbose_name=None, name=None, upload_to='',
storage=None, **kwargs):
@abirafdirp
abirafdirp / models.py
Last active Sep 20, 2017
My implementation of tree structure in Django models
View models.py
import logging
import os
from django.db import models
from django.utils import timezone
from autoslug import AutoSlugField
from ckeditor.fields import RichTextField
from positions.fields import PositionField
from slugify import slugify
@abirafdirp
abirafdirp / serializers.py
Last active Sep 20, 2017
Serialize tree model structure in DRF
View serializers.py
from rest_framework import serializers
from .models import ClonedTopic, Topic, Note, ExternalDocument
# The reason Create and List is separated is that,
# if we specify depth, then somehow some of the fields are disabled/not,
# available when we do a POST, so we can't essentialy create an object!
# This issue is reproduceable you can test it for yourself,
# but as for the reason why, I am not investigate it yet.
# A separate serializer without depth is needed for CreateView.