2009-03-06 14 views
1

私はこのようにhas_manyの関連性を持っています。 Codigoは、ほとんどの場合数値を含むvarchar列です。このデータを表示するには、コードで注文する必要がありますが、数字のみの場合、注文は厄介なものになります。注文方法文字列の列は異なっ

1,10,11,12,13,14,15,16,17,18 19,2,20、...

私はそれを解決するために何を提案しますか?

ありがとうございました。

答えて

4

列はいつもあなたのようなものを使用でき、数値になる場合、私は多くの列が文字列と数字の組み合わせが含まれます場合は、あなたが行うことができますがあることを知らない:

:order => 'cast(respostas_matriz.codigo as unsigned) asc' 
0

を私は」 Rubyの初心者だけですが、以下のような文字列を使用して小さな文字列の配列に分割し、各文字列を整数に変換することができます。

私は私の前に私のrubydocを持っていないが、

:order => 'respostas_matriz.codigo.split.map {|s| s.to_i}' 
3

のようなものが受け入れ答えは、PostgreSQL SQLiteのために働くがない、私は同じことを達成するための型に建てられたのいずれかを使用する必要がありました異なるデータベースの結果:

order: 'cast(respostas_matriz.codigo as integer) asc' 
関連する問題