Advertisement
Guest User

Untitled

a guest
Feb 14th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.53 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2.  
  3. from openerp import models, fields, api
  4.  
  5. # El nombre de la clase se pone aqui, es decir, el nombre del modelo
  6. class Pais(models.Model):
  7.     # El nombre que va a tener en la base de datos. Empezar por el nombre del modulo. y nombre del modelo
  8.     _name = 'trabajofinal.pais'
  9.  
  10.     # name es el nombre del campo de tipo string ( Char ) y requerido true obligatorio, string es el alias
  11.     name = fields.Char(string="Pais", required=True)
  12.    
  13.     # Este es la relacion 1 a muchos que tendra la contraria en el modelo ciudad. Tabla de la relacion que recibo, id de esta tabla, string de lo que recibe
  14.     ciudad_ids = fields.One2many('trabajofinal.ciudad', 'pais_id', string="Ciudades")
  15.    
  16.     # Esta es la relacion muchos a muchos. Solo se pone en un modelo. Nombre de la tabla o modelo y el string
  17.     jugador_ids = fields.Many2many('trabajofinal.jugador', string="Jugadores")
  18.  
  19.    
  20. class Ciudad(models.Model):
  21.     _name = 'trabajofinal.ciudad'
  22.    
  23.     name = fields.Char(string="Ciudad", required=True)
  24.    
  25.     # Esta es la contra relacion del modelo pais. Varias ciudades a un pais. nombre tabla del que viene, cascada si, string del que viene y requerido
  26.     pais_id = fields.Many2one('trabajofinal.pais', ondelete='cascade', string="Pais", required=True)
  27.    
  28.     estadio_ids = fields.One2many('trabajofinal.estadio', 'ciudad_id', string="Estadios")
  29.    
  30.  
  31. class Estadio(models.Model):
  32.     _name = 'trabajofinal.estadio'
  33.    
  34.     name = fields.Char(string="Estadio", required=True)
  35.    
  36.     ciudad_id = fields.Many2one('trabajofinal.ciudad', ondelete='cascade', string="Ciudad", required=True)
  37.    
  38.     # Esta es la relacion one2one pero se hace como dos many2one en los dos lados
  39.     equipo_id = fields.Many2one('trabajofinal.equipo', ondelete='cascade', string="Equipo", required=True)
  40.    
  41.  
  42. class Equipo(models.Model):
  43.     _name = 'trabajofinal.equipo'
  44.    
  45.     name = fields.Char(string="Equipo", required=True)
  46.    
  47.     estadio_id = fields.Many2one('trabajofinal.estadio', ondelete='cascade', string="Estadio", required=True)
  48.    
  49.     jugador_ids = fields.One2many('trabajofinal.jugador', 'equipo_id', string="Jugadores")
  50.    
  51.  
  52. class Jugador(models.Model):
  53.     _name = 'trabajofinal.jugador'
  54.    
  55.     name = fields.Char(string="Nombre", required=True)
  56.     apellido = fields.Char(string="Apellido", required=True)
  57.     dorsal = fields.Integer()
  58.     lesion = fields.Boolean(default=False)
  59.    
  60.     equipo_id = fields.Many2one('trabajofinal.equipo', ondelete='cascade', string="Equipo", required=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement