34 lines
1010 B
Python
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.",
|
|
)
|