2

こんにちは私はSinatraアプリで回転エラーが発生しています。DataMapper1.1とRuby1.9.2-p136を使用しています。ここで支援を求める前に、私は徹底的に検索してハッキングしました。

私が質問/試したこと:DataMapper #updateが新しいレコードを作成しない場合、それが存在しない場合、どのようにして新しいユーザーが作成されますか?そこで、問題を解決しなかったfirst_or_createを試しました。これは、作成しない限り追加したときです。私はこれを3日間デバッグしており、リファクタリングを確実に受け入れています。実際、私は確かにリファクタリングを行いますが、間違いから学ぶために、最初にこれを解決したいと思います。具体的には、「unless」コードを使用したくないので、/after_loginセクションを作成する方がはるかに優れていると思います。

私はirc#datamapper#sinatra #rubyでキャンプをしています-寛大な試みがありましたが、まだ運がありません。

最後に、元のコードはDataMapper 0.9で動作したため、DMの問題だと思いましたが、今はそうではないかもしれません。

どんな助けでも大歓迎です!

要旨:

git://gist.github.com/897342.git --ruby app file --unless createを追加しました(これには多くの問題があると思います)

git://gist.github.com/895532.git --rubyappfile--ハッキングされてcreatecallを追加しようとする前

git://gist.github.com/895394.git--user.rbファイル

git://gist.github.com/895391.git-エラーバックトレース

===更新:何時間にもわたるコードのラングリングなどと、ircグループ#datamapper#sinatraと#rubyからの多大な支援の後!! 特にDkubbを助けてくれたすべてに感謝します!NoMethodErrorsをクリアし、他のいくつかの問題に取り組んでいることを報告できてとてもうれしく思います。主に、私のコードのすべてが正確に何をしているのか、より忠実なテスト、そして一般的な全体的なリファクタリングを知っています。

興味のある方のために更新していきます。

一般的な修正は、メソッドとクラスを分離して、何が呼び出されているのか、その理由と方法がわかるようにすることでした。具体的には、@userはかなりの数の問題を引き起こしていました。したがって、シナトラのエラーは真実でした。;-)

4

0 に答える 0