問題タブ [neo4j.rb]
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.
ruby-on-rails - has_many で定義された ActiveNode でリレーションシップにアクセスすると、「undefined method」エラーが発生します
私はこのクラスを持っています
次に、コントローラーでノードを取得します。ビューに正しく表示されているため、ノードは正しく取得されます。
コントローラーのコードは次のとおりです。
次のエラーが表示されます: undefined method `related_data_elements' for # RelatedExternalDe:0x007fefa4fd6b78>
クエリを実行する代わりに RelatedExternalDe.find_by を使用してみましたが、同じ結果が得られました。ここで、新しい「RelatedExternalDe.new」でオブジェクトを作成すると、すべてが機能するように見えます。私が間違っていることは何ですか?
neo4j - Neo4j rels.to_other メソッドがエラーで失敗する
複数の言語を話すユーザーがいます。ユーザーが英語を話すかどうかを調べるクエリを作成しています。ユーザーノードと言語ノードの間に関係が存在するかどうかを検索して、ユーザーが英語を話すかどうかを調べたいと思います。rels.to_other または rels.to_others を使用してこれを行っています。以下で説明するように、両方とも失敗しています。ところで、「to_other」メソッドと「to_others」メソッドの違いは何ですか?
このエラーが発生する理由と、それを機能させる方法を教えてください。
ruby-on-rails - ノード内の文字列プロパティ全体で一般的な検索を行うにはどうすればよいですか?
Rails アプリで Neo4j を使用する。
ユーザー生成コンテンツの長い文字列を含むいくつかの文字列プロパティを持つノードがあります。たとえば、タイプが「Book」のノードには、長い形式の文字列値を含むプロパティ、「review」、および「summary」があるとします。
これらのプロパティに一致するノードを、ユーザーが検索ボックスに入力した一般的な言語の検索用語に返すクエリを設計しようとしていました。クエリがますます複雑になるにつれて、自然言語検索を解決しようとしていることに気づきました。
Rails で人気のある検索ジェムをいくつか調べてみましたが、それらはすべて ActiveRecord に依存しているようです。Neo4j.rb にはどのような検索ソリューションがありますか?
ruby-on-rails - Searchkick 検索機能が結果を返さない
ruby on rails アプリに Neo4j.rb と searchkick を使用しています。
私は次のクラスを持っています
レールコンソールで私は:
その後 :
空の配列が返されます: つまり、result.size は 0 を返します
localhost:7000 で実行されている Neo4j データベースにデータがあります
localhost:9200 で Elasticsearch サーバーを稼働させています。
NeoUser.find_by() は正しい結果を返すので、searchkick 検索機能が失敗する理由がわかりません。
何か案は?
編集 :
NeoUser.reindex の出力:
バージョン
neo4j (5.2.9)
neo4j-コア (5.1.6)
エラスティックサーチ (1.0.13)
エラスティックサーチ API (1.0.13)
エラスティックサーチトランスポート (1.0.13)
サーチキック (0.9.1)
私のubuntuマシンにelasticsearchバージョン1.7.2をインストールしたという事実と何か関係がありますか?
編集2:
コンソールを使用してデータを作成すると、検索機能がデータを返すことができることがわかりました。
したがって、searchkick は、localhost:9200 で実行されている元の neo4j データベースにアクセスできないと思います。
しかし、NeoUser.all はすべてのデータ ノードを返すので、searchkick にその特定のデータベースを使用するように指示するにはどうすればよいですか、それとも他の問題がありますか?
ruby-on-rails - 2つのノード間の接続を見つけるNeo4j rb
Rails アプリケーションで neo4j.rb を使用しています。
データベースから取得した 2 つのノード n1 と n2 が既にあります。
今、それらの間にパスがあるかどうかを確認する必要があります.Neo4j::Session.queryを使用して暗号クエリを使用することを考えていました.
しかし、私はすでに2つのノードを持っているので、クエリ内でそれらを再度取得したくありません(パフォーマンスに影響しますか?)それを行う方法はありますか?
query1 = n1.query_as(:node1) を使用してノード識別子として使用できることはわかっていますが、同じクエリ オブジェクト内に n2 を導入して、それらの間の接続を確認するにはどうすればよいでしょうか。
クエリに相当するものが欲しい
私はすでにnode1とnode2を持っています。
これを行う方法はありますか? また、CYPHER DSL を使用せずにこれを行うことはできますか?
ruby-on-rails - Neo4j rb の継承
Rails アプリで Neo4j.rb を使用しています。ポリモーフィズムに問題があります。
私はこのようなものを持っています。私は次のようなUsersクラスを持っています:
私は SocialMediaContent クラスを持っています
ソーシャル メディア コンテンツを継承するイメージ クラスとビデオ クラスが必要です。
これは、SocialMediaContent と User の間の関係を作成しているときに、SocialMediaContent の代わりに画像またはビデオ オブジェクトを提供できることを意味しますか?データベースでどのように行われますか?画像用のノードも必要ですか?通常のオブジェクト。
すなわち
私はこのような動作が必要です:すべてのユーザーには、画像またはビデオのいずれかである多くの SocialMediaContent があります (今のところ)、どれが画像でどれがビデオかを指定したくありません。
誰も私がこれを達成する方法を提案できますか? 最後に、has_many 関連付けの代わりに SocialMediaContent の配列を格納できますか (どちらが優れていますか?)
neo4j - Neo4j 時系列集計クエリ
http://neo4j.com/docs/1.9.4/cypher-cookbook-path-tree.htmlのような年、月、日、時間、分のグラフがあり、1 分で 0 個以上のイベントが発生する場合があります。イベントは一度しか発生しません。
次のような期間の頻度に一致するクエリを作成できるようにしたい
過去 7 日間、3 時間ごとに少なくとも 2 つのイベントが発生しましたか。
過去 7 日間に発生したすべてのイベントを取得して、時間単位でカウントできます。
しかし、このクエリを拡張してイベント数を 3 時間ごとにグループ化する方法がわかりません。