Skip to content

Instantly share code, notes, and snippets.

class SellProductAlphaForm(forms.ModelForm):
category = TreeNodeChoiceField(
queryset=SellCategory.objects.all(),
widget=widgets.Select(attrs={
'class': 'form-control'
})
)
class Meta:
model = SellProduct
from urllib.parse import parse_qs, urlparse
def get_hash_from_url(url: str) -> str:
parsed = urlparse(url)
if parsed.query:
_hashes = parse_qs(parsed.query).get('v')
_hash = _hashes[0]
else:
_hash = parsed.path
_hash = _hash.lstrip('/')
{% load locale_tag %}
....
{% get_available_languages as languages %}
<div class="header-lang-switch">
<ul class="nav navbar-nav">
{% for lang_code, lang_name in languages %}
<li class="nav-item">
file_storage = FileSystemStorage(
location=settings.PRIVATE_UPLOAD_ROOT,
)
def document_upload_to(instance, filename):
return upload_path('project/document', instance, filename)
@dantyan
dantyan / brief.py
Last active December 21, 2020 05:56
@admin.register(Brief)
class BriefAdmin(BaseAdmin, NestedModelAdmin):
def answers(self, request, queryset=None, pk=None):
brief = get_object_or_404(Brief, pk=pk)
return render(request, 'brief/admin/brief-answers.html', {
'brief': brief
})
@dantyan
dantyan / public.py
Last active November 5, 2020 16:53
class JobAPIView(ListAPIView):
def list(self, request: Request, *args: Any, **kwargs: Any) -> Response:
if request.user:
return self._list_authorized(request, *args, **kwargs)
else:
return self._list_unauthorized(request, *args, **kwargs)
def _list_authorized(self, request: Request, *args: Any, **kwargs: Any):
class CategoryView(ListView):
template_name = 'catalog/category.html'
queryset = Product.objects.filter(archived=False)
def dispatch(self, request: http.HttpRequest, *args: Any, **kwargs: Any) -> http.HttpResponse:
slug = kwargs.get('slug')
self.category = Category.objects.get(slug=slug)
return super().dispatch(request, *args, **kwargs)
def get_queryset(self) -> QuerySet:
@dantyan
dantyan / base.py
Last active February 17, 2020 07:30
from rest_framework import serializers
class BaseModelsSerializer(serializers.ModelSerializer):
_fields = None
def __init__(self, fields=None, *args, **kwargs):
self._fields = fields
super().__init__(*args, **kwargs)
@dantyan
dantyan / templates.py
Last active September 24, 2019 14:11
подключение тегов для всех шаблонов по умолчанию
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'builtins': [
'django.templatetags.i18n',
'django.templatetags.static',
],
from django.contrib import admin
from django.utils.safestring import mark_safe
from catalog.models import Photo
@admin.register(Photo)
class PhotoAdmin(admin.ModelAdmin):
list_display = ['show_image', 'post']
list_filter = ['post']