feat: Удалить поле примечание из компонентов комплектов

Удалено ненужное поле 'notes' из формы создания/редактирования комплектов:
- Удалено из модели KitItem
- Удалено из формы KitItemForm
- Удалено из template kititem_formset.html
- Удалено из formset'ов KitItemFormSetCreate и KitItemFormSetUpdate
- Создана миграция БД для удаления поля из базы данных

Теперь каждый товар в комплекте отображается с 4 полями:
- Товар (или Группа вариантов)
- Количество
- Кнопка удаления
- ID (скрытое)

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-02 21:08:41 +03:00
parent daf4aef414
commit 7506fee20a
4 changed files with 21 additions and 20 deletions

View File

@@ -166,18 +166,16 @@ class KitItemForm(forms.ModelForm):
""" """
class Meta: class Meta:
model = KitItem model = KitItem
fields = ['product', 'variant_group', 'quantity', 'notes'] fields = ['product', 'variant_group', 'quantity']
labels = { labels = {
'product': 'Конкретный товар', 'product': 'Конкретный товар',
'variant_group': 'Группа вариантов', 'variant_group': 'Группа вариантов',
'quantity': 'Количество', 'quantity': 'Количество'
'notes': 'Примечание'
} }
widgets = { widgets = {
'product': forms.Select(attrs={'class': 'form-control'}), 'product': forms.Select(attrs={'class': 'form-control'}),
'variant_group': forms.Select(attrs={'class': 'form-control'}), 'variant_group': forms.Select(attrs={'class': 'form-control'}),
'quantity': forms.NumberInput(attrs={'class': 'form-control', 'step': '0.001', 'min': '0'}), 'quantity': forms.NumberInput(attrs={'class': 'form-control', 'step': '0.001', 'min': '0'}),
'notes': forms.TextInput(attrs={'class': 'form-control', 'placeholder': 'Опциональное примечание'}),
} }
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
@@ -254,7 +252,7 @@ KitItemFormSetCreate = inlineformset_factory(
KitItem, KitItem,
form=KitItemForm, form=KitItemForm,
formset=BaseKitItemFormSet, formset=BaseKitItemFormSet,
fields=['id', 'product', 'variant_group', 'quantity', 'notes'], fields=['id', 'product', 'variant_group', 'quantity'],
extra=1, # Показать 1 пустую форму для первого компонента extra=1, # Показать 1 пустую форму для первого компонента
can_delete=True, # Разрешить удаление компонентов can_delete=True, # Разрешить удаление компонентов
min_num=0, # Минимум 0 компонентов (можно создать пустой комплект) min_num=0, # Минимум 0 компонентов (можно создать пустой комплект)
@@ -268,7 +266,7 @@ KitItemFormSetUpdate = inlineformset_factory(
KitItem, KitItem,
form=KitItemForm, form=KitItemForm,
formset=BaseKitItemFormSet, formset=BaseKitItemFormSet,
fields=['id', 'product', 'variant_group', 'quantity', 'notes'], fields=['id', 'product', 'variant_group', 'quantity'],
extra=0, # НЕ показывать пустые формы при редактировании extra=0, # НЕ показывать пустые формы при редактировании
can_delete=True, # Разрешить удаление компонентов can_delete=True, # Разрешить удаление компонентов
min_num=0, # Минимум 0 компонентов min_num=0, # Минимум 0 компонентов

View File

@@ -0,0 +1,17 @@
# Generated by Django 5.0.10 on 2025-11-02 18:06
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('products', '0004_add_kit_price_adjustment_fields'),
]
operations = [
migrations.RemoveField(
model_name='kititem',
name='notes',
),
]

View File

@@ -216,11 +216,6 @@ class KitItem(models.Model):
verbose_name="Группа вариантов" verbose_name="Группа вариантов"
) )
quantity = models.DecimalField(max_digits=10, decimal_places=3, null=True, blank=True, verbose_name="Количество") quantity = models.DecimalField(max_digits=10, decimal_places=3, null=True, blank=True, verbose_name="Количество")
notes = models.CharField(
max_length=200,
blank=True,
verbose_name="Примечание"
)
class Meta: class Meta:
verbose_name = "Компонент комплекта" verbose_name = "Компонент комплекта"

View File

@@ -68,15 +68,6 @@
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% if kititem_form.notes %}
<div class="row g-2 mt-1">
<div class="col-12">
<label class="form-label small text-muted mb-1">Примечание</label>
{{ kititem_form.notes }}
</div>
</div>
{% endif %}
</div> </div>
</div> </div>
{% endfor %} {% endfor %}