веб-страница

** Общие **

Откройте новый проект:

./odoo.py scaffold newpage addons

Добавьте `` website`` как зависимость к `` newpage``:

'depends': '[website]'

затем добавьте флаг website = True на контроллер, это установит несколько новых переменных в объекте запроса и позволит использовать макет сайта в нашем шаблоне.

** Создание страниц **

** 1 способ **

Напишите следующий код в `` controllers.py``:

from openerp import http
    classNewPage(http.Controller):
        @http.route('/new-page/',auth='public', website=True)
        def index(self,**kw):
            return http.request.render('newpage.index')

Новая веб-страница появится, добавив - `` / new-page / `` `` http.request.render ('newpage.index') `` - загрузив тамплату для новой страницы

Шаблон `` templates.xml``

<openerp>
    <data>
        <templateid="index">
            <t t-call="website.layout">
                <t t-set="title">New page</t>
                    <div class="oe_structure">
                        <div class="container">
                            <h1>My first web page</h1>
                            <p>Hello, world!</p>
                        </div>
                    </div>
                </t>
        </template>
    </data>
</openerp>

`` website.layout`` означает, что используются элементы шаблона сайта.

После перезапуска сервера при обновлении модуля (для обновления манифеста и шаблона) перейдите по адресу http: // localhost: 8069 / new-page /. Вы увидите новую страницу с заголовком * «Моя первая веб-страница» * и текстом * «Привет, мир!» *

2 пути

Напишите в шаблоне следующее:

<template name="Services page" id="website.services" page="True">
    <t t-call="website.layout">
        <div id="wrap">
            <div class="container">
                <h1>Our Services</h1>
                <ul class="services">
                    <li>Cloud Hosting</li>
                    <li>Support</li>
                    <li>Unlimited space</li>
                </ul>
            </div>
        </div>
    </t>
</template>

`` page = &quot;True&quot; `` создает страницу следующим образом: http: // localhost: 8069 / page / services /

Если добавить в `` view.xml``:

<record id="services_page_link" model="website.menu">
    <field name="name">Services</field>
    <field name="url">/page/services</field>
    <field name="parent_id" ref="website.main_menu" />
    <field name="sequence" type="int">99</field>
</record>

Этот код добавит ссылку в главное меню.