training fix. add global settings
This commit is contained in:
25
backend/models/TrainingSize.py
Normal file
25
backend/models/TrainingSize.py
Normal file
@@ -0,0 +1,25 @@
|
||||
from database.database import db
|
||||
|
||||
class TrainingSize(db.Model):
|
||||
"""Size configurations for training (3NF - replaces JSON arrays)"""
|
||||
__tablename__ = 'training_size'
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
|
||||
training_id = db.Column(db.Integer, db.ForeignKey('training.id', ondelete='CASCADE'), nullable=False)
|
||||
size_type = db.Column(db.String(50), nullable=False) # 'input_size', 'test_size', 'mosaic_scale', 'mixup_scale'
|
||||
value_order = db.Column(db.Integer, nullable=False, default=0) # Order in array (0=first, 1=second)
|
||||
value = db.Column(db.Float, nullable=False)
|
||||
|
||||
# Composite key ensures proper ordering
|
||||
__table_args__ = (
|
||||
db.UniqueConstraint('training_id', 'size_type', 'value_order', name='uq_training_size'),
|
||||
)
|
||||
|
||||
def to_dict(self):
|
||||
return {
|
||||
'id': self.id,
|
||||
'training_id': self.training_id,
|
||||
'size_type': self.size_type,
|
||||
'value_order': self.value_order,
|
||||
'value': self.value
|
||||
}
|
||||
Reference in New Issue
Block a user