問題タブ [ruby-datamapper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
278 参照

ruby-on-rails - Datamapper: 同じモデルに対して 2 つのリレーションシップ (has n と has 1) を作成します

互いにリンクしている 2 つのモデルがあります。

ここで、プライマリ メール アドレスをユーザーに追加したいと考えています。したがって、次のようなことができます

私はユーザーモデルでこのようなことをやろうとしてきましたが、うまくいきませんでした。

上記のトリックにより、コード サンプルを実行できますが、実行しても primary_mail_address_id は更新されません。

どうやってするの?

0 投票する
1 に答える
247 参照

ruby - DataMapperコレクションを1日に1つのコレクションに分割する方法は?

DataMapper::Collectionオブジェクトがあります。各エントリにはcreated_atプロパティがあります。エントリを1日に1つのテーブルでhtmlテーブルにレンダリングしたいと思います(そのためにSinatraを使用しています)。

すべてを1つのテーブルにレンダリングすることは問題ありませんでしたが、毎日そうすることはできませんでした。DataMapper :: Collectionオブジェクトの配列を考えました。このオブジェクトを繰り返し処理して、ジョブを実行します。しかし、私はそのような配列を構築する方法がわかりません:/

誰かが私の問題を解決する方法を知っていますか、または誰かが別の/より良いアプローチを持っていますか?前もって感謝します!

0 投票する
1 に答える
80 参照

ruby - 関連付けられたテーブルからプロパティをクエリし、DataMapper を使用して値を計算します

人物表

製品表

私のSQLクエリ

これを Data Mapper で複製できませんでした。これは私が試したものです (モデルとその関連付けを適切に定義しました)。

0 投票する
1 に答える
1631 参照

ruby - Ruby - Datamapper - 2 つのモデルを結合してレコードを収集する

私は2つのテーブルを持っています

organization_idユーザー テーブルでは、組織テーブルの ID への外部キーです

ユーザーの年齢が25歳を超える組織テーブルに参加して、ユーザーのレコードを取得したいので、結果は次のようになります

では、どうすればこれを達成できますか?結果に列 abc と xyz が必要ないことに注意してください。

これにより、25 歳以上のユーザーが得られますが、ユーザーの組織情報も取得したいと考えています。それを1つのステートメントにすることは可能ですか?または、複数の手順で実行する必要があります。すべての user_id を収集してから、id in(). を使用して Organization モデルに渡すのと同じように、これは醜いでしょう。

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

0 投票する
2 に答える
765 参照

ruby - SinatraでDataMapper::Validations :: ValidationErrors to_jsonをシリアル化するにはどうすればよいですか?

SinatraとDataMapperを使用してRESTfulAPIを開発しています。モデルが検証に失敗した場合、エラーが発生したフィールドを示すためにJSONを返したいと思います。DataMapperは、タイプのモデルに「errors」属性を追加しますDataMapper::Validations::ValidationErrors。この属性のJSON表現を返したいです。

これが単一のファイルの例です(Ruby / Sinatra / DataMapperが大好きです!):

私の実際のアプリでは、POSTまたはPUTを処理していますが、問題を再現しやすくするために、GETを使用して、またはブラウザーを使用できるようにしています。curl http://example.com:4567/person

つまり、私が持っているperson.errorsのは、私が探しているJSON出力は、ハッシュによって生成されたもののようなものです。

必要なJSON形式にするにはどうすればよいDataMapper::Validations::ValidationErrorsですか?

0 投票する
0 に答える
153 参照

ruby - 奇妙な DataMapper の問題

私は連想モデルを持っています。レコードを削除しようとすると返されますtrueが、レコードはまだ存在し

ます。モデルには2つの列がありkeys、3番目の列はenumキーでもあります。

DataMapper での連想モデルの更新/削除に関するヒント

ラック内部

0 投票する
2 に答える
103 参照

ruby - DataMapperモデルのプロパティをフリーズします

次のモデル定義があると考えてください。作成された瞬間から一定である必要がある特定のプロパティが必要です。

このようなものはありますか?またはコールバックを使用している可能性がありますか?

0 投票する
1 に答える
778 参照

sinatra - 方法:DataMapperでの単一テーブル継承?

私はSinatra(1.3.2)を学習しており、 DataMapper(1.2.0)をORMとして使用し、インメモリSQLite(1.3.6)DBを使用して開始することを選択しました。
2つのモデルBooksDownloadsがほとんどの属性を共有しているため、DataMapperでSTI(単一テーブル継承)のモデルを宣言することを検討しました。ドキュメントを読むと、 Types::Discriminatorのおかげでこれは簡単なことのようです。

私はすべての一般的なものを次のように抽象化しましたDownloadableResource

に従って、拡張する必要があるものを指定するのと同じくらい簡単だと思いました。

しかし、これは私に次のエラーを与えていました:

DataObjects :: SyntaxError:重複列名:id(コード:1、sql状態:、クエリ:ALTER TABLE " downloadable_resources " ADD COLUMN "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT、uri:sqlite3 :: memory:?scheme = sqlite&user = &password =&host =&port =&query =&fragment =&adapter = sqlite3&path =:memory :)

IDを削除しているときに、別の(明らかな)エラーが発生しました:

DataMapper :: IncompleteModelError:DownloadableResourceには、有効であるためのキーが必要です

include DataMapper::Resourceとの両方に追加するBookことでこれを回避し、Download有効Bookにするためにキーが必要になりました。これは次のようになります。

同じことが当てはまりますがDownload、問題は次のとおりです。

DataObjects :: SyntaxError:重複列名:id(コード:1、sql状態:、クエリ:ALTER TABLE " books " ADD COLUMN "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT、uri:sqlite3 :: memory:?scheme = sqlite&user = &password =&host =&port =&query =&fragment =&adapter = sqlite3&path =:memory :)

私が輪になっていくように感じ始めましたが、DataMapperで単一テーブル継承を実装する適切な方法は何ですか?


PS:私は見ました

しかし、私はまだこの問題を抱えています。

0 投票する
2 に答える
434 参照

ruby - datamapperがレコードを更新しない/汚れを検出しないのはなぜですか?

最近、簡単な移行スクリプトを書きたいと思いました。私が書いた:

updateステートメントがtrueを返したにもかかわらず、レコードは保存されませんでした。私は何を取りこぼしたか?

0 投票する
1 に答える
785 参照

ruby - Sinatraでメソッドエラーはありません

config.ruとgemfileを設定した後、私の投稿は機能しなくなりました。

まず、main.rbにDataMapper.setupが必要であり、irbでDataMapperメソッドを実行できません。

次に、POSTを介してフォームを送信し、データをデータベースに保存するたびに、Sinatraは次のように戻ります...

main.rb

Gemfile

config.ru

asdfasdfは、送信前にフォームの入力ボックスに入力したテキストであることに注意してください。

誰かがそれをライブテストしたい場合のリポジトリについては... https://github.com/thejourneydude/morsecode