问题标签 [salat]
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.
scala - scala & mongoDB - 如何用 salat 计算记录?
是否可以使用 salat 库发出具有多个条件的 count() 查询?
现在我只是在做类似的事情
但我相信计数会表现得更好
scala - NoClassDefFoundError => ClassPath$JavaContext 使用播放开始时
我制作了一个小的 Scala,Play2.0.2 应用程序。
play run
当我使用命令时它工作正常,但是当我使用play start
orplay clean compile stage + target/start
时,当我尝试使用 Casbah/Salat 进行 MongoDB 插入时,我得到以下堆栈:
任何想法?
scala - 为什么我在运行时需要 Scala 编译器?(具有 Scalap 依赖性的 Play2/Salat)
我正在使用 Scala / Mongo / Casbah / Salat / Play2,当我尝试使用 Salat 时,它似乎依赖于 Scalap。
它在运行应用程序时工作正常,play run
但play start
我得到以下堆栈:
scala/tools/nsc/util/ClassPath$JavaContext
在 Scala 编译器项目中,所以我添加了 SBT 依赖项:
现在它也可以正常工作play start
。
但是,运行我的项目时必须使用 scala 编译器的运行时依赖项是正常的吗?
为什么它可以在play run
没有 scala 编译器依赖的情况下工作?不在生产模式下运行时是否自动嵌入?
谢谢
scala - 玩!从单独的 mongo 集合中选择项目的表单
因此,对于我正在开发的系统,我正在尝试做类似的事情:
如果我有一个名为 User 的模型,它有一个 _id (ObjectId)、用户名、密码,然后我正在尝试创建一个新约会,我的表单将查找患者(在下拉列表中显示患者姓名,但实际上会选择病人的 ObjectId)和预约时间。
现在我到处找,找不到任何接近我想要达到的解决方案的东西。
在 Application.scala 中,我有:
我不确定如何充分发挥我的观点以反映患者。我知道你必须做这样的事情:
谁能给我任何关于如何查找此示例的患者以获取 Mongo ObjectId 的想法。
顺便说一句,我使用的 ORM 是https://github.com/leon/play-salat
scala - 将 MongoDB 文档映射到具有类型但没有嵌入文档的案例类
Subset看起来像一个有趣的、精简的 MongoDB 包装器。
在给出的示例之一中,有推文和用户。但是,User
是 的子文档。Tweet
在经典 SQL 中,这将被规范化为两个单独的表,其外键从 Tweet 到 User。在 MongoDB 中,这不需要 a DBRef
,存储用户的ObjectId
就足够了。
在 Subset 和 Salat 中,这将导致这些案例类:
因此,不能保证 Tweet 中的 ObjectId 实际上解析为 User(使其类型安全性降低)。我还必须为每个引用 User 的类编写相同的查询(或将其移动到某些特征)。
所以我想要实现的是case class Tweet(_id: ObjectId, content: String, userId: User)
在代码中和ObjectId
数据库中拥有 , 。这可能吗?如果可以,怎么做?什么是好的选择?
mongodb - Can't Connect to MongoDB from play app with salat: command failed [listDatabases]
我正在尝试开始使用 playframework 中的 salat 插件。我已经在其中配置了数据库,application.conf
并将所有依赖项添加到文件中Build.scala
,并将 salat 添加到play.plugins
文件中。我实际上还没有在项目中添加任何代码,我只是按照 github 页面上的说明进行操作,然后尝试运行该项目。我收到以下错误消息
我很困惑,因为我将密码和所有内容都添加到了 conf 文件中。从日志看来,任何试图为我连接到数据库的东西都没有使用我提供的信息先登录。
scala - Play2、MongoDB、play-salat:类转换异常
我有一个对象Foo
,其中包含Bar
我使用 play-salat 插件从 MongoDb 获得的对象列表。模型看起来像这样。
该视图应显示 foo 对象的列表。我通过这样的迭代器
显示数据的模板部分如下所示:
这样做,我得到一个 ClassCastException:
我尝试了其他类似的变体
导致 ClassCastException 以及:
问题是,如何遍历 mongodb 对象列表?我猜/希望不需要某种传输对象。
scala - 为什么在 Salat 中 grater[BigThing].asDBObject(v) 的值将嵌套字段变成了数组?
这是我正在使用的导入:
我有两个案例类:
我的刨丝器在单独刨丝时正确地生成了一个带有字段名称的 DBObject:
这打印:
但是当对 BigThing 进行光栅化时,Thing 的字段名称会变成一个数组:
这打印:
这是一个错误吗?我做错了什么?
我的 build.sbt 字段是这样的:
mongodb - 仍然无法针对使用 Salat / Casbah 玩 FakeApp 进行多项测试
我以为我已经暂时解决了这个问题,但事实证明我仍然有问题。
我正在尝试为我的模型层创建一些 specs2 测试,我想插入一些虚拟对象,然后运行一些查询以确保数据按预期输出。这是我的简单测试的样子:
这是我从单元测试中获得的堆栈跟踪:
看起来 FakeApp 以某种方式与数据库断开连接,而不是重新连接。我查看了播放源,似乎应用程序将停止并重新启动,无论它是否实际上是同一个对象。我认为这个问题可能源于salatonStop()
方法,或者onStart()
我不太确定。
我已经为此苦苦挣扎了一段时间,任何帮助,即使只是关于如何推理问题,将不胜感激。