2016-08-29 3 views
1

私はレールアプリケーションのテーブルMyTableで実行されている 'where'クエリを実行しています。 特定の列の結果をこのクエリ(ActiveRecord :: Relation)からString型のJava配列に変換したいとします。ActiveRecordの変換:Java配列への関連

これは私がやっているものです:私は私のログにこのエラーが発生しますが

employeesJavaArray=MyTable.where("salary = ?",100).pluck(:columnName).to_java(java.lang.String) 

を: -

TypeError (could not coerce Fixnum to class java.lang.String): 

あなたは声明それと間違って何ができるか私を助けてください私は書いた。

+0

列は 'どのようなデータ型を返すcolumnName'ん? – spickermann

+0

複数のテーブルで同じタイプのクエリを実行していますが、そのうちの1つがintを返し、他のものがstringを返しています。 – user3166642

+0

まず整数を文字列に変換しようとしましたか? – spickermann

答えて

1

私は最初の配列のみ(to_sを呼び出すことで)文字列が含まれていることを確認します:

employeesJavaArray = MyTable.where("salary = ?",100) 
          .pluck(:columnName) 
          .map(&:to_s) 
          .to_java(java.lang.String) 
関連する問題