Pular para o conteúdo
Menu
Esta pergunta foi sinalizada
1 Responder
4269 Visualizações

I am developing a module in which I am defining a controller class (openerpweb.Controller).

I have defined a function with decorator (@ openerpweb.httprequest) because access to this function we do through a http request "httprequest". The problem is that from here I need to access to the some function model, and when I do get an error. class Json(openerpweb.Controller): _cp_path = "/df_document/json"

@openerpweb.httprequest
def load(self, req, id, do_not_eval=False):
    Model = req.session.model('document.directory')            
    directory_model = Model.search([('parent_id', '=', int(id))])

Error is raise AuthenticationError("Credentials not provided") AuthenticationError: Credentials not provided

Avatar
Cancelar
Melhor resposta

Have you tried logging in and then changing the URL in your browser?

You need to have logged in already as a user before accessing any models. You should be able to do that through code since it looks like you are goining for json, however I have no experience with that.
How come you use @openerpweb.httprequest rather than @openerpweb.jsonrequest?
I am also creating a controller, could you share where you are pulling your information/sources from? It took help from a fellow coder to point out that the documentation in trunk only works for version 8, as it was recently changed, and my install is V7.

EDIT: For V7, I found out that you need to authenticate your request. So before you attempt to access a model you need to run:

req.session.authenticate('your-db-name', 'user-name', 'password')

Then you'll be able to access the models like you wanted to.

Avatar
Cancelar
Publicações relacionadas Respostas Visualizações Atividade
1
dez. 24
3977
0
nov. 24
1625
2
jul. 24
3338
0
abr. 24
2149
3
mar. 24
2164