mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Remove special characters restriction in category names (#3370)
* [FR]Special characters restriction in category names Fixes #3358 * remove old validation test
This commit is contained in:
parent
aca58dedc0
commit
09987ad79b
@ -24,7 +24,6 @@ import InvenTree.format
|
||||
import InvenTree.helpers
|
||||
from common.models import InvenTreeSetting
|
||||
from InvenTree.fields import InvenTreeURLField
|
||||
from InvenTree.validators import validate_tree_name
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
@ -538,7 +537,6 @@ class InvenTreeTree(MPTTModel):
|
||||
name = models.CharField(
|
||||
blank=False,
|
||||
max_length=100,
|
||||
validators=[validate_tree_name],
|
||||
verbose_name=_("Name"),
|
||||
help_text=_("Name"),
|
||||
)
|
||||
|
@ -80,10 +80,7 @@ def validate_sales_order_reference(value):
|
||||
|
||||
|
||||
def validate_tree_name(value):
|
||||
"""Prevent illegal characters in tree item names."""
|
||||
for c in "!@#$%^&*'\"\\/[]{}<>,|+=~`\"": # noqa: P103
|
||||
if c in str(value):
|
||||
raise ValidationError(_('Illegal character in name ({x})'.format(x=c)))
|
||||
"""Placeholder for legacy function used in migrations."""
|
||||
|
||||
|
||||
def validate_overage(value):
|
||||
|
18
InvenTree/part/migrations/0081_alter_partcategory_name.py
Normal file
18
InvenTree/part/migrations/0081_alter_partcategory_name.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 3.2.14 on 2022-07-20 16:09
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('part', '0080_alter_part_image'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='partcategory',
|
||||
name='name',
|
||||
field=models.CharField(help_text='Name', max_length=100, verbose_name='Name'),
|
||||
),
|
||||
]
|
@ -1,6 +1,5 @@
|
||||
"""Unit tests for the PartCategory model"""
|
||||
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.test import TestCase
|
||||
|
||||
from .models import Part, PartCategory, PartParameter, PartParameterTemplate
|
||||
@ -109,19 +108,6 @@ class CategoryTest(TestCase):
|
||||
part_parameter.pop(item)
|
||||
self.assertEqual(len(part_parameter), 1)
|
||||
|
||||
def test_invalid_name(self):
|
||||
"""Test that an illegal character is prohibited in a category name"""
|
||||
cat = PartCategory(name='test/with/illegal/chars', description='Test category', parent=None)
|
||||
|
||||
with self.assertRaises(ValidationError) as err:
|
||||
cat.full_clean()
|
||||
cat.save() # pragma: no cover
|
||||
|
||||
self.assertIn('Illegal character in name', str(err.exception.error_dict.get('name')))
|
||||
|
||||
cat.name = 'good name'
|
||||
cat.save()
|
||||
|
||||
def test_delete(self):
|
||||
"""Test that category deletion moves the children properly."""
|
||||
# Delete the 'IC' category and 'Transceiver' should move to be under 'Electronics'
|
||||
|
18
InvenTree/stock/migrations/0079_alter_stocklocation_name.py
Normal file
18
InvenTree/stock/migrations/0079_alter_stocklocation_name.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 3.2.14 on 2022-07-20 16:09
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('stock', '0078_alter_stockitem_supplier_part'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='stocklocation',
|
||||
name='name',
|
||||
field=models.CharField(help_text='Name', max_length=100, verbose_name='Name'),
|
||||
),
|
||||
]
|
Loading…
Reference in New Issue
Block a user