basic search working

This commit is contained in:
Dominik Natter
2025-03-26 17:41:46 +01:00
parent a3104cfeb0
commit c5c9cc37af
13 changed files with 406 additions and 18 deletions

View File

@@ -0,0 +1,32 @@
import { NextRequest, NextResponse } from 'next/server';
import { getPayload } from 'payload';
import config from '@payload-config';
const payload = await getPayload({ config });
export async function GET(req: NextRequest) {
const searchParams = req.nextUrl.searchParams;
const search = searchParams.get('search');
if (!search) {
return NextResponse.json({ error: 'No documents matching search found' }, { status: 404 });
}
const response = await payload.find({
collection: 'papers',
where: {
or: [
{ title: { contains: search } },
{ issue: { contains: search } },
{ goal: { contains: search } },
{ 'technologies.description': { contains: search } },
{ 'prototype.description': { contains: search } },
{ 'authors.description': { contains: search } },
],
},
});
const titles = response.docs.map((doc) => doc.title);
return NextResponse.json({ titles });
}