maglevhq / maglev-core

Ruby on Rails website builder
https://www.maglev.dev
MIT License
273 stars 47 forks source link

Page Search by path incorrectly searches locale #68

Closed rkischuk closed 10 months ago

rkischuk commented 11 months ago

Searching by path does not return expected results.

Steps:

  1. Created a page /chapters/boston
  2. Issued an API call of /maglev/api/pages?q=chapters (via front end search)
  3. The search returns empty, when it should match the page created

Gem versions: maglev-injectable (2.1.1) maglevcms (1.2.2) jbuilder (~> 2.11.2) kaminari (~> 1.2.1) maglev-injectable (~> 2.1.1) rails (>= 6, <= 7.1) vite_rails (>= 3, <= 4) maglevcms-hyperui-kit (1.1.0)

Maglev::Page Load (1.2ms) SELECT DISTINCT "maglev_pages".*, "maglev_pages"."title_translations" ->> 'en' FROM "maglev_pages" INNER JOIN "maglev_page_paths" ON "maglev_page_paths"."maglev_page_id" = "maglev_pages"."id" WHERE ("maglev_pages"."title_translations" ->> 'en' ILIKE '%chapters%' OR "maglev_page_paths"."value" ILIKE '%chapters%' AND "maglev_page_paths"."value" = 'en') ORDER BY "maglev_pages"."title_translations" ->> 'en' ASC

It seems like the search query should be:

maglev_page_paths"."locale" = 'en'