Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
1 Відповісти
2124 Переглядів

Please could you help me resolve the problem of template not rendered for a controller - appended are the codes for the same :

from odoo import http

class Books(http.Controller):

@http.route("/library/books", auth='public')

def list(self, **kwargs):

Book = http.request.env["library.book"]

books = Book.search([])

return http.request.render(

"library.book_list_template",{'book': books}

)

<odoo>

<template id="book_list_template" name="Book List">

<div id="wrap" class="container">

<h1>Booksh1>

<t t-foreach="books" t-as="book">

<div class="row">

<span t-field="book.name" />,

<span t-field="book.date_published" />,

<span t-field="book.publisher_id" />

div>

t>

div>

template>

odoo>


Аватар
Відмінити
Найкраща відповідь

here you are given an error because are passing 'book' and on XML side are you using for loop on books

correct this way here:

from odoo import http

class Books(http.Controller):

@http.route("/library/books", auth='public')
def list(self, **kwargs):
Book = http.request.env["library.book"]
books = Book.search([])
return http.request.render(
"library.book_list_template", {'books': books}
)

in XML side use:

t-foreach="books"t-as="book"


Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
0
квіт. 21
5147
1
серп. 22
2988
0
трав. 22
2672
Controller inheritance Вирішено
1
квіт. 21
5277
0
лют. 25
938