İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
5002 Görünümler

I'm creating a page using the website module that would require login before a user can view. how do i create such page on Odoo 10? Thanks 

Avatar
Vazgeç
En İyi Yanıt

Hi,

If you are creating the page via code then  you can do it like this,

Suppose you have created a new menu in the website like this,

<record id="test_menu" model="website.menu">
<field name="name">Test</field>
<field name="url">/page/test</field>
<field name="parent_id" ref="website.main_menu"/>
<field name="sequence" type="int">80</field>
<field name="website_id" ref="website.default_website"/>
</record>

Then on clicking the menu the system will search for the route /page/test

Then in the controller,

@http.route('/page/test', type='http', auth="user", website=True)
def test_test(self, **post):
return request.render('module_name.template_id')

Here if the auth="public",
then when the public user come and click on the newly created menu, he can view the page.

If the auth="user", when the public user come and clicking on the menu, he will be redirected to login page and ask to login, if he entered the login credentials properly he will directed to the page.


Then the template has to be defined,

<template id="template_id" name="Test Menu" page="True">
<t t-call="website.layout">
<div class="container">
<form>
</form>
</div>
</t>
</template>

Thanks

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Eyl 25
309
5
Ağu 25
4917
2
Ağu 25
1572
2
Ağu 25
775
5
Ağu 25
10223