openerp-community team mailing list archive
-
openerp-community team
-
Mailing list archive
-
Message #00484
Re: set context depending on the current record in ir.actions.act_window
On Thu, Aug 4, 2011 at 8:06 PM, Fabien Pinckaers <fp@xxxxxxxxxxx> wrote:
>
>
> Raphael Valyi wrote:
> >
> >
> > On Thu, Aug 4, 2011 at 7:39 PM, Fabien Pinckaers <fp@xxxxxxxxxxx
> > <mailto:fp@xxxxxxxxxxx>> wrote:
> >
> >
> > > off-topic but related: today the following test [('foo_ids',
> > 'contains',
> > > 'bar')] works with a name based on the name_search stuff. However,
> > from
> > > my quick tests if I remember properly, it doesn't work with an id
> such
> > > as [('foo_ids', 'contains', id)]. Any chance when an id is provided
> it
> > > would then try to match the id? That would be more precise because
> > names
> > > can be duplicated eventually or a name could also be included in
> some
> > > other larger name. What I propose might however conflicts with
> > searching
> > > a name containing some number. Any specific syntax we could adopt
> to
> > > have this working? Thoughts?
> >
> > Raphaël,
> >
> > Which type of field ? many2one or one2many ? Contains does not
> exists, I
> > think you probably mean 'like' ?
> >
> >
> > Yeah, sorry, meant "ilike". I was asking for one2many and many2many.
> >
> >
> > For searching on ids, we don't use 'like' but:
> > [('foo_ids', '=', id)]
> > [('foo_ids', 'in', [id,id2])]
> > I don't remember having seen/planned some improvements or changes in
> > that area.
> >
>
How manage it in many2many ?
> >
> > What I sometimes need is the contrary of "in"
> > so in your example [('foo_ids', 'in', [id,id2])]$
> > I want to actually rather test that id is inside the foo_ids collection.
>
> If you do [('foo_ids', 'in', [id,id2])] on a one2many, it checks one for
> which an in id foo_ids is in (id, id2). So this is what you expect I guess.
>
> When you do [('foo_ids', '=', id)], I think it also searches for a
> one2many containing an id (not sure, to be tested), so this is also what
> you expect.
>
> As far as I know, the only limitation is that we can not do a ==. So, I
> think this is not possible:
> [('foo_ids', '=', [id,id2])]
> But I never had a scenario when I needed that. So, unless we have a real
> need, this is not a big issue.
>
>
> --
> Fabien Pinckaers
> CEO OpenERP
> Chaussée de Namur 40
> B-1367 Grand-Rosière
> Belgium
> Phone: +32.81.81.37.00
> Fax: +32.81.73.35.01
> Web: http://openerp.com
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openerp-community
> Post to : openerp-community@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openerp-community
> More help : https://help.launchpad.net/ListHelp
>
--
Cristian Salamea
@ovnicraft
References