iT邦幫忙

2023 iThome 鐵人賽

DAY 20
0
Odoo

Odoo 16 入門介紹系列 第 20

api 的應用

  • 分享至 

  • xImage
  •  

api

我們也可以透過json來製作api

@http.router('/book',metho=['POST'],type='json',auth='*',csrf=False)
     def create_book(self, **kwargs):
        data = request.jsonrequest
        book_name = data.get('name')
        author = data.get('author')
        response = {
            'message': 'Book created successfully',
            'book_name': book_name,
            'author': author
        }
        return response
@http.router('/book',metho=['POST'],type='json',auth='*',csrf=False)
     def create_book(self, **kwargs):
        data = http.request.jsonrequest
        book_name = data.get('name')
        author = data.get('author')
        result = {'author': author}
        response = json.dumps(result, default=data_utils.json_default)
        return response

website=True

當我們在@http.router中加入website=True之後,我們將會直接套用odoo的網頁主題:

首先我們要在__manifest__.py中加入website:

'depends': [..., 'website'],

之後我們在先前的程式碼加入website=True:

@http.route('/my_library/books', auth='user',website=True)
    def list(self, **kwargs):
        book = http.request.env['library.book']
        books = obj.sudo().search([])
        return http.request.render('library.library_template',{'books': books})

上一篇
@router 介紹
下一篇
report 的介紹
系列文
Odoo 16 入門介紹30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言