草庐IT

mongodb - 无法获取 grails 中关联字段的 dirtyPropertyNames 属性值

我需要检查对象的先前状态,以便记录发生的更改。我正在使用dirtyPropertyNames来提取此类属性,但它没有给我关联字段的持久值,我的代码在下面给出classEmployee{StringnameStringtitleStringcityListaddressesListskillsstatichasMany=[skills:Skill,addresses:Address]}staticbelongsTo=[Skill]staticembedded=['skills','addresses']}在我的beforeUpdate()方法代码中,当我检查dirtyProperties

mongodb - 带有 MongoDB、对象 ID 和脚手架的 Grails

我使用集成测试和Grails脚手架将数据写入mongoDB数据库时遇到问题。尝试从“列表”类型页面中选择域实例时,我收到错误消息“找不到ID为null的[domainname]”。我确定这是因为Grailsurl[controller]/[action]/[id]。此id是一个字符串,需要将其转换为ObjectId以用于Grails查询。有没有办法做到这一点,使其影响指定的域,甚至更好的是,同时影响所有域?我想在我编写我的应用程序时,我可以从操作方法中将其转换为ObjectId,但我希望让脚手架工作或提供一个全局解决方案。 最佳答案

java - Gorm MongoDB 插件存储 jvm 对象 id 而不是字节数组数据

当我尝试将字节数组存储为grails应用程序中域类的字段时,mongo数据库中的结果条目是objectidofthebytearray而不是我期望的BinData对象。例子:classSimpleDomainClass{byte[]filed=['d','w',1,5,'r']}MongoDB中的结果如下:{"field":"[B@29edc561"}我期待的是:{"field":BinData(0,"blahblahblah")}mongo-javadriverdocsclearlystatethatthisshouldbestoredasabinaryobject它正在为我们使用类

mongodb - GMongo 中可以进行身份​​验证吗?

我一直在将GMongo用于访问我们的Mongo实例的简单Grails网络应用程序。我们最近在Mongo上启用了身份验证,需要用户名+密码才能访问我们的数据库。据我所知,没有办法在GMongo中提供用户名+密码(除了使用GORM机制,这在我们的案例中不适用)。有什么办法吗?或者以任何其他方式在Groovy/Grails中访问受密码保护的MongoDB? 最佳答案 查看文档,我认为您可以在创建GMongo实例时执行此操作:importcom.mongodb.MongoClientimportcom.mongodb.MongoCreden

grails - 无法让 GORM mongodb 插件保存新记录,即使使用显式刷新也是如此

我所知道的:mongod正在运行,数据库存在,集合存在,我可以使用mongodb控制台进行插入,并且到mongod实例的连接是由Grails建立的(即我可以查询等等)。其他细节:Grails2.01、mongodb插件1.0.0RC4、hibernate插件2.01、mongodb2.0.3classNode{staticmapWith="mongo"staticconstraints={}ObjectIdidIntegersomeId//someIdcanbenullorjustnon-existentStringname}什么不起作用:我无法通过GORM插入任何数据,即使我明确将f

mongodb - 如何在 MongoDB GORM 中支持嵌入式 map (具有自定义值类型)?

我想要一个由map引用的嵌入式文档(如下面的“A类”)。环境为Grails+GORM+MongoDB。这可能吗?如果可能,怎么做?classA{//failswithIllegalArgumentExceptionoccurredwhenprocessingrequest:can'tserializeclassXinline234oforg.bson.BasicBSONEncoderstaticmapWith="mongo"Mapmap=newHashMap()}classB{//worksstaticmapWith="mongo"Listlist=newArrayList()}cla

mongodb - 使用 GORM MongoDB 持久化动态 groovy 属性

我目前正在尝试使用Grails的GORMMongoDB插件来持久化以下类:classResult{StringurldefResult(){}staticconstraints={}staticmapWith="mongo"staticmapping={collection"results"database"crawl"}}我正在运行以保留此类的代码如下:classResultIntegrationTests{@BeforevoidsetUp(){}@AftervoidtearDown(){}@TestvoidtestSomething(){Resultr=newResult();r.

mongodb - 如何在 MongoDB 上的 Grails 集成测试中回滚事务

当使用MongoDB作为数据源时,我如何(应该)配置Grails集成测试以自动回滚事务?(我使用的是Grails2.2.1+mongodb插件1.2.0) 最佳答案 对于spock集成测试,我定义了一个MongoIntegrationSpec,它可以控制清理测试数据。dropDbOnCleanup=true//将在每个功能方法执行后删除整个数据库。dropDbOnCleanupSpec=true//规范完成后将删除整个数据库。dropCollectionsOnCleanup=["collectionA","collectionB",

mongodb - 每个子类的 Grails 继承 MongoDb 集合

在我使用mongoDb和继承的Grails2.3.8应用程序中,我有这个基域类:classRecord{longbatchIDstaticmapping={tablePerHierarchyfalse}}和这个子类:classIndividualRecordextendsRecord{StringuniqueIdStringfirstNameStringmiddleNamestaticmapping={collection"individualRecords"database"twcdb"}staticconstraints={firstName(nullable:true)middl

mongodb - 初始化应用程序时出错 : No datastore implementation specified Message: No datastore implementation specified

我想在MongoDB中使用Grails2.5中的“ElasticSearch”插件。我的“BuildConfig.groovy”文件是:grails.servlet.version="3.0"//Changedependingontargetcontainercompliance(2.5or3.0)grails.project.class.dir="target/classes"grails.project.test.class.dir="target/test-classes"grails.project.test.reports.dir="target/test-reports"g