Files
mvd_tcg_mtg/models/mvd_tcg_mtg_card_face.py
2026-04-03 23:08:57 +02:00

34 lines
1010 B
Python

"""Magic: The Gathering face-level reference models."""
from odoo import fields, models
class MvdTcgMtgCardFace(models.Model):
"""Represent one ordered printed face of an MTG card reference."""
_name = "mvd.tcg.mtg.card.face"
_description = "MTG Card Face"
_order = "card_id, sequence, id"
card_id = fields.Many2one(
"mvd.tcg.card",
required=True,
index=True,
ondelete="cascade",
)
sequence = fields.Integer(default=10, index=True)
name = fields.Char(required=True, translate=True, index="trigram")
mana_cost = fields.Char()
type_line = fields.Char(translate=True)
oracle_text = fields.Text(translate=True)
flavor_text = fields.Text(translate=True)
power = fields.Char()
toughness = fields.Char()
loyalty = fields.Char()
artist = fields.Char(index="trigram")
_card_sequence_unique = models.Constraint(
"UNIQUE (card_id, sequence)",
"The MTG face sequence must be unique per card.",
)