标签: datastore

dojo.store.Observable,JSON REST和queryEngine

有没有人知道如何在dojo中使用带有Observable weapon的dojo中的JsonRest存储,就像在dojo.store.Observable中那样?

我需要在服务器端实现商店并使其作为Observable工作吗?客户端怎么样?文档说http://dojotoolkit.org/reference-guide/1.7/dojo/store/Observable.html

如果您使用的服务器端存储(如JsonRest存储),则需要提供queryEngine才能正确地包含或排除查询中的更新对象.如果queryEngine不可用,则将使用未定义的索引调用observe侦听器.

但是,我不知道他们的意思.我自己从未创建过一个商店,并且我对queryEngine并不是很熟悉(说实话,我觉得它有点令人困惑).为什么需要queryEngine?doc是什么意思"未定义索引"?你如何为JsonRest商店编写一个queryEngine?我不应该为可观察的REST存储使用某种Web套接字,因为其他用户也可能会更改数据吗?

困惑!

javascript ajax dojo datastore restful-architecture

7
推荐指数
1
解决办法
2594
查看次数

dataStore和数据库之间有什么区别?

我正在设置CKAN实例.我必须为CKAN设置一个postgres数据库才能运行.另外,我还要设置一个dataStore.

我在stackoverflow上发现了这个问题,但没有回答我的问题.

如何在数据存储而不是数据库中思考?

一般来说,dataStore和数据库之间有什么区别?

database postgresql datastore ckan

7
推荐指数
2
解决办法
4523
查看次数

在GAE中实施唯一约束

我正在尝试使用Google App Engine Java,但是缺少一个独特的约束条件会让事情变得困难.我已经阅读过这篇文章,这个博客提出了一种实现类似方法的方法.我的背景是在MySQL.Moving到数据存储没有一个独特的约束让我感到紧张,因为我从来不必担心重复值之前和检查每个值之前插入一个新值仍然有错误的余地.

"不,你仍然无法在架构创建过程中指定唯一的."

- David Underhill谈论GAE和唯一约束(后链接)

你们用什么来实现类似于唯一或主键的东西?

我听说过使用低级api创建的抽象数据存储层,它像普通的RDB一样工作,然而它不是免费的(但是我不记得软件的名称)

我的问题的示意图

sNo = biggest serial_number in the db
sNo++
Insert new entry with sNo as serial_number value //checkpoint
User adds data pertaining to current serial_number 
Update entry with data where serial_number is sNo 
Run Code Online (Sandbox Code Playgroud)

但是在第3行(检查点),我觉得两个用户可能会添加相同的sNo.这就是阻止我使用appengine的原因.

google-app-engine unique datastore

6
推荐指数
2
解决办法
3979
查看次数

NSUrl未存储为NSUserDefault中的absolutestring

我指的是上一篇文章,用于在NSUserDefault中存储iPod库的NSURL.但应用程序关闭后,它不会存储在NSUserDefault中.

我使用其他NSString的在其中做完美NSUserDefaults的存储,但是当我保存NSURL绝对串..它不存储值.

可能是什么原因??

编辑

以下代码我用来保存NSUserDefault值:

currentItem = [collection.items objectAtIndex:songCount];
songURL = [currentItem valueForProperty:MPMediaItemPropertyAssetURL];
[[NSUserDefaults standardUserDefaults] setObject:[currentItem valueForProperty:MPMediaItemPropertyTitle] forKey:@"songTitle"];
[[NSUserDefaults standardUserDefaults] setObject:[songURL absoluteString] forKey:@"songURL"];
avPlayer = [[AVPlayer alloc] initWithURL:songURL];
NSLog(@"songTitle: %@  songURL : %@",[[NSUserDefaults standardUserDefaults]objectForKey:@"songTitle"], songURL);
Run Code Online (Sandbox Code Playgroud)

当我尝试保存NSURL时出现以下错误:

2011-09-13 18:47:23.258 Tabata Timer[933:707] songURL : ipod-library://item/item.mp3?id=-3715406019015217536
2011-09-13 18:47:23.258 Tabata Timer[933:707] *** -[NSUserDefaults setObject:forKey:]: Attempt to insert non-property value 'ipod-library://item/item.mp3?id=-3715406019015217536' of class 'NSURL'.
2011-09-13 18:47:23.260 Tabata Timer[933:707] songTitle : Ghajini
2011-09-13 18:47:24.860 Tabata Timer[933:707] *** -[NSUserDefaults setObject:forKey:]: Attempt to insert non-property value …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c datastore nsurl nsuserdefaults

6
推荐指数
1
解决办法
5042
查看次数

For 循环导致错误“迭代器已经启动”,<google.cloud.datastore.query.Iterator object at 0x108e19590>'

我有一个带有多个循环的表单。对于每个表单元素,提交后都有一个用于验证错误的 for 循环。我还有一个存储在数据库中的帮助文本循环。所有帮助文本都保存在 help_text 中,因此我每次都需要循环访问以获取正确的帮助文本并显示。问题是当我为循环添加多个 help_text 实例时,出现错误:

'Iterator has already started', <google.cloud.datastore.query.Iterator object at 0x108e19590>
Run Code Online (Sandbox Code Playgroud)

我希望有一种方法可以在视图中搜索记录结果,这样就不必循环,但任何建议都值得赞赏。

<div>
  {{ form.Bus_Case_Stage.label }}
  <span>
    {% for help in help_items %}
      {% if help['Question'] == 1 %}
        {{ help }}
      {% endif %}
    {% endfor %}
  </span>
  {% for message in form.Bus_Case_Stage.errors %}
     <div>{{ message }}</div>
  {% endfor %}
  {{ form.Bus_Case_Stage }}
</div>
Run Code Online (Sandbox Code Playgroud)

datastore flask python-3.x

6
推荐指数
0
解决办法
1682
查看次数

同步 SQLite 数据库和 Dropbox 数据存储

我为 Android 开发记事本应用程序。应用程序将其数据存储在 SQLite 数据库中。我想使用Dropbox 数据存储 API为应用程序数据实现可选的备份/同步。如果用户已链接他的 Dropbox 帐户应用程序数据应存储在 Dropbox 云中并在所有用户的设备之间同步。

我的解决方案最初是将所有应用程序数据存储在数据库中。当用户链接他的 Dropbox 帐户应用程序将所有数据移动到数据存储。之后该应用程序将与数据存储区配合使用(因为它支持离线缓存并在后台执行同步)。如果用户决定取消他的 Dropbox 帐户与应用程序的链接,他的所有数据都将移回设备上的本地 SQLite 数据库。我想创建应用程序数据存储的接口并有两个实现:SQLite 数据库和 Dropbox 数据存储。因此其他应用程序组件将不依赖于存储实现。当然,所有这些对用户都是完全透明的。

这是一个好方法吗?你能建议更好的方法吗?

提前致谢!

database architecture android datastore dropbox

5
推荐指数
1
解决办法
6466
查看次数

调试 Google Datastore:IllegalArgumentException:projectId 必须与以下模式匹配

我正在开发一个应用程序引擎项目并使用 Google Datastore 存储我的数据。我想调试它,但我仍然有例外java.lang.IllegalArgumentException: projectId must match the following pattern: ([a-z\\d\\-]{1,100}~)?([a-z\\d][a-z\\d\\-\\.]{0,99}:)?([a-z\\d][a-z\\d\\-]{0,99})

\n\n

我能够调试我的 appengine 项目,并且可以部署它并将数据正确存储在 Google Datastore 中。

\n\n

为了进行调试,我遵循了数据存储模拟器的说明:

\n\n

https://cloud.google.com/datastore/docs/tools/datastore-emulator

\n\n

我已经安装了 Google Cloud SDK,并使用我的项目 id 的默认值正确启动它(并且我还尝试通过命令行设置我自己的项目 id)。

\n\n

这是我在 gcloud 中执行的命令:

\n\n
\n

gcloud beta 模拟器数据存储启动 --project="my-project-name"

\n\n

警告:重用 [C:\\gcloud\\emulators\\datastore] 中的现有数据。\n 执行:cmd /c\n C:\\google-cloud-sdk\\platform\\cloud-datastore-emulator\\ cloud_datastore_emulator.cmd\n start --host=localhost --port=8806 --store_on_disk=True\n --consistency=0.9 --allow_remote_shutdown C:\\gcloud\\emulators\\datastore [数据存储] 2016 年 11 月 27 日 5 :08:17 PM\n com.google.cloud.datastore.emulator.CloudDatastore$FakeDatastoreAction$7\n 应用 [数据存储区] INFORMACI?N:提供了 --allow_remote_shutdown 来\n 不再需要的启动命令。[数据存储区] 2016 年 11 月 27 日\n 5:08:17 …

java debugging google-app-engine datastore google-cloud-datastore

5
推荐指数
1
解决办法
2514
查看次数

Android 数据存储 IOException 无法重命名为

我正在尝试在我的项目中实现 Jetpack Datastore。我正在使用该apha-01版本并且代码运行良好。然后我在Gradle文件中看到有新版本,所以我将其更新为alpha-03.

启动我的应用程序后,我遇到了另一个问题。我发现版本中没有找到 Proto 库,alpha-03所以我回滚到版本alpha-01。另外,我尝试过alpha-02。从那时起我遇到了以下错误:

 Process: com.montymobile.sands, PID: 19928
    java.io.IOException: /data/user/0/com.montymobile.sands/files/datastore/sns_preferences.preferences_pb.tmp could not be renamed to /data/user/0/com.montymobile.sands/files/datastore/sns_preferences.preferences_pb
        at androidx.datastore.SingleProcessDataStore.writeData$datastore_core_release(SingleProcessDataStore.kt:304)
        at androidx.datastore.SingleProcessDataStore.transformAndWrite(SingleProcessDataStore.kt:282)
        at androidx.datastore.SingleProcessDataStore$actor$1.invokeSuspend(SingleProcessDataStore.kt:165)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:56)
        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
Run Code Online (Sandbox Code Playgroud)

我注意到发生这种情况是因为我依次保存了两个不同的密钥,每个密钥都在一个协程中。当我评论第二个操作时,它起作用了。谁能解释为什么会发生这种情况?以及如何保存我想要的尽可能多的值?

任何帮助,将不胜感激。

android datastore ioexception android-jetpack

5
推荐指数
1
解决办法
2364
查看次数

使用 App Engine 捆绑服务数据存储区的 $FeatureNotEnabledException

将我的 GAE 服务从 Java 8 迁移到 Java 11,我使用 App Engine 捆绑服务。

https://cloud.google.com/blog/products/serverless/support-for-app-engine-services-in-第二代-runtimes

API文档显示有数据存储API,

https://cloud.google.com/appengine/docs/standard/java11/reference/services/bundled

但是当我在 Java 11 运行时上部署服务时,我得到了 $FeatureNotEnabledException

javax.servlet.ServletException:com.google.apphosting.api.ApiProxy$FeatureNotEnabledException:datastore_v3.RunQuery

有一篇博客文章说它回来了,

https://www.googlecloudcommunity.com/gc/Serverless/Updates-from-the-Google-App-Engine-team-Fall-2021/td-p/174941

但我不确定我可以像这样使用“com.google.appengine.api.datastore.Query”

    DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
    Key         key         = KeyFactory.createKey("Memobook", user.getEmail());
    Query       query       = new Query("Memo", key);
    datastore.prepare(query);
Run Code Online (Sandbox Code Playgroud)

java migration google-app-engine datastore

5
推荐指数
1
解决办法
382
查看次数

Android中如何查看DataStore中是否有数据?

这是我的UserManager.kt类,它具有保存和映射数据的功能,但如何创建一个函数来告诉我数据存储区是否有用户?

    class UserManager(context: Context) {

    private val dataStore = context.createDataStore(name = "user_prefs")

    companion object {
        val USER_NAME_KEY = preferencesKey<String>("USER_NAME")
        val USER_NUMBER_KEY = preferencesKey<Int>("USER_NUMBER")
    }

    suspend fun storeUser(number: Int, name: String) {
        dataStore.edit {
            it[USER_NUMBER_KEY] = number
            it[USER_NAME_KEY] = name

        }
    }

    val userNumberFlow: Flow<Int> = dataStore.data.map {
        it[USER_NUMBER_KEY] ?: 0
    }

    val userNameFlow: Flow<String> = dataStore.data.map {
        it[USER_NAME_KEY] ?: ""
    }
}
Run Code Online (Sandbox Code Playgroud)

android datastore kotlin

5
推荐指数
1
解决办法
2214
查看次数