1
現在、PyRavenDB経由でPythonオブジェクト(ウェブサイト)をRavenDBデータベースに保存しようとしています。問題はデータが適切に保存されることですが、結果を照会してテストすると、属性の一部が空に戻されます。 コードはシンプルですが、私は問題を正しく見つけることができません。RavenDBオブジェクトは正しく保存されていますが、クエリの際に空の属性があります
データベース内のJSONオブジェクトは次のとおりです(DB Web UIで確認済み)。
{
"htmlCode": "<code>TEST HTML</code>",
"added": "2017-02-21",
"uniqueid": "262e4584f3e546afa2c67045a0096b54",
"url": "www.example.com",
"myHash": "d41d8cd98f00b204e9800998ecf8427e",
"lastaccessed": "2017-02-21"
}
私は
from pyravendb.store import document_store
store = document_store.documentstore(url="http://somewhere:someport", database="websites")
store.initialize()
with store.open_session() as session:
query_result = list(session.query().where_equals("www.example.com", url))
print query_result
print type(query_result)
return query_result
を照会するために、このコードを使用する場合それは、このオブジェクトを返します。
{
'uniqueid': 'f942e86f965d4709a2d69caca3001f2a',
'url': '',
'myHash': 'd41d8cd98f00b204e9800998ecf8427e',
'htmlCode': '',
'added': '2017-02-21',
'lastaccessed': '2017-02-21'
}
あなたが見ることができるように、URLやHTMLコードが空です。彼らは適切に格納されているDBのため、彼らはokeyする必要があります。
ありがとうございました。
この文書のメタデータがどのようなものです修正します。この
query_result = list(session.query().where_equals("url", "www.example.com"))
へ
query_result = list(session.query().where_equals("www.example.com", url))
を変更しますか? –
where_equals( "url"、url).select(param1、param2、.....)メタデータは次のようになります。{ "Raven-Entity-Name" : "ウェブサイト"、 "Raven-Python-Type": "__main__.Website" } – Neil