0

アダプターがない QuickBase 用の Rails アプリケーションを開発しようとしています。オンラインで QuickBase アダプターを確認しましたが、非常に古いバージョンの Rails では機能せず、作成者はサポートを終了したと言いました。

Active Record と典型的な Rails アプリケーションの関連概念を使用できるようにしたいのですが、作成、更新、および表示アクションの動作に介入して変更します。新しいレコードを正常に作成するためのアプリケーションを作成しました。ただし、レコードを編集できるようにしたい場合は、最初に編集アクションを変更して、独自のデータベースに移動し、データをアクティブなレコード オブジェクトに取得します。

空のアクティブ レコードを作成するには、$user = User.new と言いました。次に、すべての属性にカスタム データベースのデータを入力しました。ただし、フォームには、[ユーザーの更新] ボタンではなく、[ユーザーの作成] ボタンが引き続き表示されます。どうやら、これは持続するためだと思いますか?これは「新しい」オブジェクトであるため、メソッドは false を返します。しかし、私はこれが新しいものではないことを知っています。では、@user オブジェクトが永続的なものであると考えるようにするにはどうすればよいでしょうか?

または、新しい関数を使用せずに空の @user オブジェクトを作成する方法はありますか?

あちこちチェックしましたが、これを達成する方法の手がかりが見つかりませんでした。手伝ってくれてどうもありがとう。

4

1 に答える 1

0

@user.disconnect!call の後に callを試すことができます@user = User.new。これにより、ActiveRecord がデータベースに書き込もうとしなくなりますが、それで問題が解決するかどうかはわかりません。

より大きな問題は、ここで四角いペグを丸い穴に合わせようとしていることです. ActiveRecord の要点は、データベースへの接続を抽象化することです。では、データベースがなければ意味がありません。

最善の解決策は、独自の QB アダプターを作成することだと思います。データベースへの読み書きの方法をすでに知っているように見えるので、思ったほど難しくはないかもしれません。

その方法について詳しくは、http: //api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/AbstractAdapter.htmlを参照してください。

于 2014-10-29T23:28:19.717 に答える