I don't think the actual problem was in the search select drop downs.

Once you pass 0 or 1
["#{column.search_sql} = ?", value.to_s] it would evaluate to "column = '1'"
or "column = '0'"
true or false
["#{column.search_sql} = ?", value.to_s] it would evaluate to "column =
'true'" or "column = 'false'" <-- won't work in oracle

but as Sergio said, rails-2.2 and master branches have
["#{column.search_sql} = ?", column.column.type_cast(value)]

I would hope if you do
["#{column.search_sql} = ?", column.column.type_cast(value)]
with 'true' or 'false' that it will convert it to 1 or 0, if it doesn't
convert it to 1 or 0 then it won't work with oracle.

I don't know how type_cast works though.



On Fri, Mar 13, 2009 at 5:04 AM, Sergio Cambra .:: entreCables - Symbol
Servicios Informáticos S.L. ::. <[email protected]> wrote:

>
> El Thursday 12 March 2009 18:56:30 naaano escribió:
> > Acording to SQL ISO standard, boolean types are "CRUDed" as:
> > TRUE - FALSE
> > However, Mysql doesn't have real support for boolean types, instead
> > using a patched way of tinyint.
> > Not surprising that most users use this database engine, the code
> > developed to interact with databases is first made with Mysql in
> > mind.
> > So, AS doesn't have problems with this since most of it is handled via
> > ActiveRecord, but there's some harcoded SQL in it. Particulary, this
> > mistakes reflect on 2 parts/files:
> >
> > 1.- the search_ui (search_column_helpers.rb: line
> > 106:active_scaffold_search_boolean)
> > 2.- the finder constructor (finder.rb: condition_for_column, line 39)
> >
> > However, Mysql supports SQL ISO standard for this, so, switching the
> > code to SQL standard makes it work for all database engines:
> >
> > in search_column_helpers.rb, lines 109 and 110:
> >  select_options << [as_(:true), true]
> >  select_options << [as_(:false), false]
>
> I have fixed it, thanks.
>
> >
> > in finder.rb, line 39:
> > ["#{column.search_sql} = ?", value.to_s]
>
> In rails-2.2 and master branches is:
> ["#{column.search_sql} = ?", column.column.type_cast(value)]
> I think it should be work for postgresql
> What rails and AS version are you using?
>
> --
> Sergio Cambra .:: entreCables S.L. ::.
> Nicolás Guillén 6, locales 2 y 3. 50.018 Zaragoza
> T) 902 021 404 F) 976 52 98 07 E) [email protected]
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"ActiveScaffold : Ruby on Rails plugin" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/activescaffold?hl=en
-~----------~----~----~----~------~----~------~--~---

  • AS... naaano
    • ... Sergio Cambra .:: entreCables - Symbol Servicios Informáticos S.L. ::.
      • ... Kenny Ortmann
      • ... naaano

Reply via email to