İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
7554 Görünümler

Im trying some website-programmings and want to display a specific page name on the frontend. Therefore I have the following code:

class wsga(http.Controller):
    @http.route('/hello/', auth="public", type='http', website=True)
    def hello(self, **kw):
        imd = request.registry['ir.model.data']
        iuv = request.registry['ir.ui.view']
        
        cr = request.cr

        view_id = imd.get_object_reference(request.cr, request.uid, 'wsga', 'wsga_test')
        view = iuv.browse(request.cr, request.uid, [('id', '=', view_id), ], context=None)
        
        view_result = []
        for v in view:
            view_result.append({
                'name': v.name,
            })

        return view_result

But the problem is, that this ends up in an SQL-Error in the for-loop. Problem is this query:

SELECT ir_ui_view."create_uid",ir_ui_view."create_date",ir_ui_view."name",ir_ui_view."inherit_id",ir_ui_view."arch",ir_ui_view."write_uid",ir_ui_view."priority",ir_ui_view."application",ir_ui_view."website_meta_description",ir_ui_view."website_meta_title",ir_ui_view."mode",ir_ui_view."write_date",ir_ui_view."id",ir_ui_view."website_meta_keywords",ir_ui_view."model",ir_ui_view."model_data_id",ir_ui_view."type",ir_ui_view."page",ir_ui_view."field_parent" FROM "ir_ui_view"
                        WHERE ir_ui_view.id IN (('id', '=', ('ir.ui.view', 704))) AND (TRUE)
                        ORDER BY priority,name

Problem ist the (('id', '=', ('ir.ui.view', 704))) which I think should be like this (704).

Can anyone help me to understand what went wrong?

Thank you!

Avatar
Vazgeç
En İyi Yanıt

hi,

you have to change the following line.

 view = iuv.browse(request.cr, request.uid, [('id', '=', view_id), ], context=None)

with new line below.

 view = iuv.browse(request.cr, request.uid, [('id', '=', view_id[1]), ], context=None)

Avatar
Vazgeç
Üretici En İyi Yanıt

Thank you for helping. I tested this with return view_id[1] to see wat's the output. 
Sometimes you just can not get the simplest things.

Thank you very much!

Avatar
Vazgeç

Always your welcome :)

İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Eki 24
1284
1
Haz 20
5948
5
Tem 18
6268
0
Mar 15
4290
1
Ara 24
3903