Cara Input Data Ke Database Secara Manual Di Odoo Python

Cara Input Data Ke Database Secara Manual Di Odoo Python - Kita tahu Odoo merupakan sebuah ORM, nah untuk melakukan penyimpanan data kedalam database kita perlu menambahkan model dan juga viewnya. Model digunakan untuk membuat tablenya dan viewnya digunakan untuk membuat field sebagai input agar bisa disimpan didalam table. 

Nah berikut ini adalah fungsi yang digunakan untuk menginputkan data dari data model secara manual kedalam table bertujuan untuk menyimpan data. Salah satunya kita harus mengenal yang namanya Def Create dan Juga Def write. 

Nah Fungsi untuk def create yaitu sebelum data dari input xml masuk kedalam table, maka difungsi akan dijalankan terlebih dahulu, Proses ini dimana data dimanipulasi dari XML sebelum masuk kedalam database. 

Simak kode dibawah ini :

from odoo import models, fields, api
import secretsi

import secretsclass DaftarApi(models.Model):
    _name = 'forca.api.user'

    name = fields.Char('Nama', required=True)
    username = fields.Char('Username', required=True)
    code_token = fields.Char('Token', required=False)
    active_username = fields.Selection([('yes', 'Yes'), ('no', 'No')], string='Active',required=True)

    @api.model
    def create(self, vals):
        vals['code_token'] = secrets.token_hex(12)
        return super(DaftarApi, self).create(vals)

Nah untuk anda lihat function def create. fungsi tersebut akan dijalankan sebelum data dimasukan kedalam database. lihat code dibahwanya. seperti ini kodenya

vals['code_token'] = secrets.token_hex(12)

Kode diatas, merupakan kode dimana untuk field code_token akan di isikan sendiri oleh sistem tanpa inputan langsung dari user. Code_token akan di isikan random oleh inputann A-Z0-10.

Dari sini kalian bisa mencoba untuk mengisikan secara manual atau secara sistem sesuai dengan yang kalian harapkan. Terimakasih

Muhammad Miftahul Ulum

MuhammadMiftahulUlum.com is an information blog founded in 2014. This blog shares information from experiences, tips, and tricks, as well as comments from the author's side. I am someone who is always eager to learn new things and share my knowledge of various topics. 

Diberdayakan oleh Blogger.