lib/pg_search/multisearch/rebuilder.rb in pg_search-0.7.3 vs lib/pg_search/multisearch/rebuilder.rb in pg_search-0.7.4
- old
+ new
@@ -26,23 +26,29 @@
def connection
model.connection
end
- REBUILD_SQL_TEMPLATE = <<-SQL.strip_heredoc
- INSERT INTO :documents_table (searchable_type, searchable_id, content, created_at, updated_at)
- SELECT :model_name AS searchable_type,
- :model_table.id AS searchable_id,
- (
- :content_expressions
- ) AS content,
- :current_time AS created_at,
- :current_time AS updated_at
- FROM :model_table
- SQL
+ def primary_key
+ model.primary_key
+ end
+ def rebuild_sql_template
+ <<-SQL.strip_heredoc
+ INSERT INTO :documents_table (searchable_type, searchable_id, content, created_at, updated_at)
+ SELECT :model_name AS searchable_type,
+ :model_table.#{primary_key} AS searchable_id,
+ (
+ :content_expressions
+ ) AS content,
+ :current_time AS created_at,
+ :current_time AS updated_at
+ FROM :model_table
+ SQL
+ end
+
def rebuild_sql
- replacements.inject(REBUILD_SQL_TEMPLATE) do |sql, key|
+ replacements.inject(rebuild_sql_template) do |sql, key|
sql.gsub ":#{key}", send(key)
end
end
def replacements