This question has been flagged

I am trying to do this:

moves = env['stock.move'].search([('picking_id','==',current_stock_picking)])

Inside a controller, but I am getting global variable "env" is not defined. I also tried to define it via:

    env = Env(cr, uid, context)

But then I get global variable "Env" is not defined.

What is missing? Thanks.


I include full controller code:

class Binary(http.Controller):
@http.route('/web/binary/item_labels', type='http', auth="user")
@serialize_exception
def download_item_labels(self, id, **kw):

            Model = request.registry['stock.picking']
            cr, uid, context = request.cr, request.uid, request.context
            fields = [ 'id' ]
            current_stock_picking = Model.read(cr, uid, [int(id)], fields, context)[0]['id']
            print "current_stock_picking"
            print current_stock_picking

            env = Env(cr, uid, context)
            moves = env['stock.move'].search([('picking_id','==',current_stock_picking)])
            print "moves"
            print moves



Avatar
Discard
Best Answer

Make sure that you have imported the class Environment correctly. For example for your code works ok you just need to add this line at the top of the file

from openerp.api import Environment as Env
Avatar
Discard
Author

Thanks Axel,