Size: a a a

Django [ru] #STAY HOME

2019 November 18

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Fred
порос drf сериализатор, пишу валидацию
   def validated_file(self, value):
       print()
       if value:
           report = ArtDocument.objects.filter(art_id=art_id,
                                               doc_type='REPORT')
           a = report.count() == 1
           raise serializers.ValidationError("error ")
       return value
хочу валидацию на количество файлов сделать, вопрос как мне из post запроса art_id вытянуть в валидаторе?
self.context['request'] в сериализаторе
источник

F

Fred in Django [ru] #STAY HOME
Pavel Zagrebelin
self.context['request'] в сериализаторе
да я это знаю
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
Fred
да я это знаю
валидируй этот момент в def validate(), там будет и файл, и art_id.
источник

F

Fred in Django [ru] #STAY HOME
Pavel Zagrebelin
валидируй этот момент в def validate(), там будет и файл, и art_id.
а я это делаю в def validate_file()
источник

F

Fred in Django [ru] #STAY HOME
окей
источник

Z

ZHU in Django [ru] #STAY HOME
ZHU
https://dpaste.de/KExA
подскажите как селект сделать mptt
получаю только чать а остально
не отображается в селекте
кто нибудь работал с mptt ?
источник

Z

ZHU in Django [ru] #STAY HOME
ZHU
кто нибудь работал с mptt ?
показывает только это
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
ZHU
показывает только это
это что за селект?
источник

Z

ZHU in Django [ru] #STAY HOME
селект категории которая привязана к юзеру но тут не все выходит
источник

Z

ZHU in Django [ru] #STAY HOME
{% for node,structure in request.user.profile.division.get_children|tree_info %}
   {% if node.is_child_node %}
       <option value="{{ node.pk }}">
           {{ structure.ancestors|tree_path }} -- {{ node }}
       </option>
   {% endif %}
{% endfor %}
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
ZHU
{% for node,structure in request.user.profile.division.get_children|tree_info %}
   {% if node.is_child_node %}
       <option value="{{ node.pk }}">
           {{ structure.ancestors|tree_path }} -- {{ node }}
       </option>
   {% endif %}
{% endfor %}
А в форме как это выглядит?
источник

Z

ZHU in Django [ru] #STAY HOME
ZHU
показывает только это
вот так
источник

Z

ZHU in Django [ru] #STAY HOME
если ты саму форму я там не делал
источник

Z

ZHU in Django [ru] #STAY HOME
я не знаю как форму запихать это! если ты про form.py
источник

PZ

Pavel Zagrebelin in Django [ru] #STAY HOME
ZHU
вот так
Просто уже есть
category = mptt.forms.TreeNodeChoiceField(models.Category.objects)
который всё корректно рендерит и обрабатывает. Не подойдёт?
источник

Z

ZHU in Django [ru] #STAY HOME
Pavel Zagrebelin
Просто уже есть
category = mptt.forms.TreeNodeChoiceField(models.Category.objects)
который всё корректно рендерит и обрабатывает. Не подойдёт?
мне нужно что бы он отрендарил только то что входит в категорию пользователя
источник

Z

ZHU in Django [ru] #STAY HOME
Pavel Zagrebelin
Просто уже есть
category = mptt.forms.TreeNodeChoiceField(models.Category.objects)
который всё корректно рендерит и обрабатывает. Не подойдёт?
он не работает
источник

Z

ZHU in Django [ru] #STAY HOME
источник

Z

ZHU in Django [ru] #STAY HOME
class GasStationFilter(django_filters.FilterSet):
   subdivision = TreeNodeChoiceField(queryset=Division.objects.all())

   class Meta:
       model = GasStation
       fields = ['id', 'name', 'type', 'subdivision', 'status', 'ts']
       order_by_field = '-id'
источник

RN

Roman Nedobytko in Django [ru] #STAY HOME
всем привет, подскажите нужно ограничить юзера к обєкту, я переопредилил objects на на своево менеджера (models.Manager) как туда прокинуть юзера с запроса чтобы постояно не передавать в запросах  model.objects.all(request.user) (можно так сказать мидлваре для модели)
источник