2
私のアプリケーションでは、純粋なSQLを使いたい場所がいくつかあります。 Sql.newInstanceで接続の詳細をハードコードすると、正常に動作します。明らかな理由から、私は接続の詳細をハードコードしたくないと思います。GrailsでのSQL接続
dataSource変数を使用すると、nullになります。コントローラでの私のコードは次のとおりです。データソース設定ファイルの
import groovy.sql.Sql
def dataSource
def sql = Sql.newInstance(dataSource)
sql.executeInsert("insert into....")
私のコードは次のとおりです。
environments {
development {
dataSource {
dbCreate = "create-drop"
url = "jdbc:postgresql:mydev"
username = "xxx"
password = "xxx"
あなたは私は、PostgreSQLを使用している見ることができるように。私は同じ結果を持つデフォルトのgrailsデータベースを使って試してみました。
すべてのアイデアをいただければ幸いです。
こんにちはcrudolf答えをありがとう。今はこのdef dataSource行を渡しますが、def sql = new Sql(dataSource)を設定すると、ClassNotFoundException例外が発生します。私もdef sql = new groovy.sql.Sql(dataSource)を試しましたが、同じ結果です。何か案は? Regires、Marius – marius
あなたのコントローラの上に 'import groovy.sql.Sql'を実行しようとします。理論的にはうまくいくはずです。 grails 1.3.7または2.0.1を使用していますか?それが助けにならないなら、完全な例外理由を教えてください。 – Chris
私はgrails 2.0.1を使用しています。現在私はgroovy.sql.Sqlをインポートしています。私はなぜそれが動作していないアイデアを持っていますが、それを修正する方法がわからない、またはそれが問題であれば。私の見解では、タグを使っていくつかのチェックボックスを描画しています。これらのチェックボックスをオン/オフにするには、AJAX呼び出しを使用してJavaScript関数にパラメータを渡します。この関数は、SQLクエリを実行しようとするカスタムアクションがあるコントローラを呼び出します。 AJAXコールを使用しているときにgrailsオブジェクトを失うことはありますか? – marius