gpt4 book ai didi

grails - 可搜索的Grails

转载 作者:行者123 更新时间:2023-12-02 14:26:42 25 4
gpt4 key购买 nike

我试图使自己的脚趾湿透,并决定创建一个食谱站点作为第一个项目。
我使用grails 2.0.1并使用mongoDB GORM进行持久化,效果很好,并且在我的模型中使用static Searchable = true进行搜索。

做一个简单的搜索工具,我设法使用以下方法按名称查找食谱:

def recipes = Recipe.withCriteria
{
ilike('name', params.name)
}

可以按名称找到食谱。我的问题是,如何搜索成分名称以将其标记为搜索结果(关于以下模型)?
来自PHP和MySQL,这就像使用联接或其他方式修改查询一样容易

我的模型如下:
class Recipe 
{
String name;
String method;
Date dateAdded;

static hasMany = [ingredients:Ingredient];
static Searchable = true;
static constraints =
{
name(blank:false, maxSize: 255)
method(blank:false)
}

static mapping =
{
sort dateAdded: "desc"
}
}

class Ingredient
{
String name;

static hasMany = [recipes:Recipe];
static belongsTo = [Recipe]
static constraints =
{
name blank:false;
}

String toString()
{
return name;
}
}

最佳答案

那应该是带有小写字母“s”的static searchable = true-参见http://grails.org/Searchable+Plugin+-+Mapping

但是Searchable插件不适用于Mongo或其他NoSQL数据存储。这是因为它是使用Hibernate事件实现的,以侦听与插入,删除和更新数据库行以及基于这些更改更新Lucene索引相对应的事件。由于没有混合使用Hibernate,因此Searchable无法识别任何更改。

关于grails - 可搜索的Grails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9970118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com