我有一个带有ActiveRecord模型的Rails应用程序,它们之间有关联.
为了简单起见,假设我的数据库架构完全相同 - https://github.com/elastic/elasticsearch-rails/blob/master/elasticsearch-model/examples/activerecord_associations.rb#L95
我想搜索名为"John"的文章作者.
Article.search('john')
按预期在article.authors的指定字段first_name和last_name中搜索.
我想更具体一点,只能通过first_name通过article.authors搜索文章.
Article.search(authors: {first_name: 'john'})
不起作用.
做上述事情的正确方法是什么?
同样使用Elastic HQ,在文章索引中有字段作者.这是否意味着elasticsearch-rails索引是正确的并且嵌套作者?
目前,我正在寻找在运行mix
任务时添加 SQL 语句日志记录的方法。例如,这样的命令mix ecto.rollback
和mix ecto.migrate
输出信息:
...
13:45:53.016 [info] == Running Repo.Migrations.AddAmountToUserResources.change/0 backward
13:45:53.016 [info] alter table user_resources
...
Run Code Online (Sandbox Code Playgroud)
然而,alter table user_resources
我希望看到ecto
命中 DB生成的确切 SQL 语句,而不是神秘的。有没有办法做到这一点?
我已经检查了几个看起来相关的 SO 答案(例如Disable Elixir Ecto Debug output)。不幸的是,在我上面的情况下,他们没有帮助我。提前致谢。