将 Meilisearch 集成到您的 Ruby on Rails 应用程序中。
1. 创建 Meilisearch 项目
在 Meilisearch Cloud 控制面板中创建项目。查阅我们的入门指南以获取分步说明。
如果您更喜欢使用自托管版本的 Meilisearch,可以按照快速入门教程进行操作。
2. 创建 Rails 应用程序
确保您的环境至少使用 Ruby 2.7.0 和 Rails 6.1。
3. 安装 meilisearch-rails Gem
导航到您的 Rails 应用程序并安装 meilisearch-rails
Gem。
bundle add meilisearch-rails
4. 添加您的 Meilisearch 凭据
运行以下命令以创建 config/initializers/meilisearch.rb
文件。
bin/rails meilisearch:install
然后添加您的 Meilisearch URL 和默认管理员 API 密钥。在 Meilisearch Cloud 中,您可以在项目设置中找到您的凭据。
MeiliSearch::Rails.configuration = {
meilisearch_url: '<your Meilisearch URL>',
meilisearch_api_key: '<your Meilisearch API key>'
}
5. 生成模型并运行数据库迁移
创建一个示例 Article
模型并生成迁移文件。
bin/rails generate model Article title:string body:text
bin/rails db:migrate
6. 将模型索引到 Meilisearch 中
包含 MeiliSearch::Rails
模块和 meilisearch
块。
class Article < ApplicationRecord
include MeiliSearch::Rails
meilisearch do
# index settings
# all attributes will be sent to Meilisearch if block is left empty
end
end
此代码创建一个 Article
索引,并为您的 Article
模型添加搜索功能。
配置完成后,meilisearch-rails
会自动将您的表数据与 Meilisearch 实例同步。
7. 在数据库中创建新记录
使用 Rails 控制台在数据库中创建新条目。
# Use a loop to create and save 5 unique articles with predefined titles and bodies
titles = ["Welcome to Rails", "Exploring Rails", "Advanced Rails", "Rails Tips", "Rails in Production"]
bodies = [
"This is your first step into Ruby on Rails.",
"Dive deeper into the Rails framework.",
"Explore advanced features of Rails.",
"Quick tips for Rails developers.",
"Managing Rails applications in production environments."
]
titles.each_with_index do |title, index|
article = Article.new(title: title, body: bodies[index])
article.save # Saves the entry to the database
end
8. 开始搜索
后端搜索
后端搜索返回从数据库重新加载的符合 ORM 的对象。
# Meilisearch is typo-tolerant:
hits = Article.search('deepre')
hits.first
我们强烈建议使用前端搜索,以享受快速响应的即时搜索体验。
前端搜索
出于测试目的,您可以使用我们内置的搜索预览来浏览记录。
我们还提供资源,帮助您快速构建自己的前端界面。
后续步骤
当您准备好使用自己的数据时,请务必先配置您的索引设置以遵循最佳实践。有关完整的配置示例,请参阅meilisearch-rails Gem README。