Witamy!
Forum dla profesjonalistów i entuzjastów systemu Odoo. Dyskusje, porady, opinie, komentarze.
Czy w tabeli istnieje wartość [Zamknięte]
- Pytanie został zamknięty z powodu: niezwiązane z tematem lub nieaktualne
przezUtworzyłem liste marek, wszystko pieknie funkcjonuje ale .... jak w prosty sposób zbudować funkcję która sprawdzi czy w bazie istnieje już taki wpis/taka marka a jesli istnieje .... komunikat "istnieje w bazie, nie można zapisać!" albo "wpis o takiej nazwie istnieje czy napewno chcesz zapisać ?"
Co robię źle ?
Gdzie tkwi problem ?
Nie wiem czy to istotne ale może to mieć związek z tym, że informacje których duplikowanie chciałbym zatrzymać są w klasie product_variant kod wygląda tak:
#================= K L A S A V A R I A N T ==================
Klasa ta posiada dwa pola: name i selector
selector => jest używany do filtrowania.
Żeby zapobiec powielaniu nazw w Variant chciałem użyć _sql_constraint jak sugerowaliście ale coś nie bardzo działa bo albo nie wiem gdzie to powinno być umieszczone albo ... ponieważ dane są zapisywane do pola typu many2one ?
class product_variant(orm.Model):
_name = 'product.variant'
_columns = {
'name': fields.char('Variant'),
'selector': fields.selection([
('Computer','Computer'),
('Processor','Processor'),
('Storage_device','Storage device'),
('Optical_drive','Optical drive'),
('RAM_module','RAM module'),
('Graphics_card','Graphics card'),
('Storage_controller','Storage controller'),
('Power_supply','Power supply'),
('Monitor','Monitor'),
('Motherboard','Motherboard'),
('Cable','Cable'),
('Case_part','Case part'),
('Peripheral','Peripheral'),
('Internal_components','Internal components')],'selector'),
}
#gdzie to powinienem umieścić ? => _sql_constraints = [('variant.name_uniq', 'unique(variant.name)', 'Already exist!')]
chciałbym aby dotyczyło to wyłacznie tej klasy.
class product_template(orm.Model):
_inherit = 'product.template'
_columns = {
'product_variant_id': fields.many2one(
'product.variant',
'Variant', help='Select or add a variant of the IBM or Lenovo product if not exist', ondelete='restrict'),
}
Bądź na bieżąco
O tym forum
Narzędzia do pytań
Statystyki
Spytał/a: 01.05.2015, 09:23 |
Oglądano: 1017 razy |
Ostatnia aktualizacja: 07.05.2015, 22:20 |
class product_template(osv.osv): _inherit = "product.template" _sql_constraints = [ ('name_uniq', 'Check(1=1)', 'Nazwa istnieje na liscie!'), ] product.brand() czy tak ? A jeśli w starym API bo to mi wygląda na nowy :)