mirror of
https://github.com/fccapria/scientify.git
synced 2026-01-12 02:36:10 +00:00
Initial release
This commit is contained in:
commit
ae5e4b8873
52 changed files with 17572 additions and 0 deletions
59
backend/app/debug_routes.py
Normal file
59
backend/app/debug_routes.py
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
from fastapi import Depends, APIRouter
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import selectinload
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from app.db import Publication, get_db, Keyword, Author
|
||||
|
||||
router = APIRouter(prefix="/debug", tags=["debug"])
|
||||
|
||||
# Debug endpoint to view all publications with complete data
|
||||
@router.get("/publications")
|
||||
async def debug_publications(db: AsyncSession = Depends(get_db)):
|
||||
"""Debug endpoint to view all publications with their complete data"""
|
||||
stmt = select(Publication).options(
|
||||
selectinload(Publication.authors),
|
||||
selectinload(Publication.keywords),
|
||||
selectinload(Publication.user)
|
||||
).order_by(Publication.upload_date.desc())
|
||||
|
||||
result = await db.execute(stmt)
|
||||
publications = result.scalars().all()
|
||||
|
||||
debug_data = []
|
||||
for pub in publications:
|
||||
debug_data.append({
|
||||
"id": pub.id,
|
||||
"title": pub.title,
|
||||
"authors": [{"id": a.id, "name": a.name} for a in pub.authors],
|
||||
"keywords": [{"id": k.id, "name": k.name} for k in pub.keywords], # 🎯 KEYWORDS!
|
||||
"upload_date": pub.upload_date,
|
||||
"journal": pub.journal,
|
||||
"year": pub.year,
|
||||
"doi": pub.doi,
|
||||
"user_email": pub.user.email if pub.user else None,
|
||||
"user_id": str(pub.user_id) if pub.user_id else None
|
||||
})
|
||||
|
||||
return {
|
||||
"total_publications": len(publications),
|
||||
"publications": debug_data
|
||||
}
|
||||
|
||||
|
||||
# Debug endpoint to view all authors
|
||||
@router.get("/authors")
|
||||
async def debug_authors(db: AsyncSession = Depends(get_db)):
|
||||
"""Debug endpoint to view all authors"""
|
||||
result = await db.execute(select(Author))
|
||||
authors = result.scalars().all()
|
||||
return [{"id": a.id, "name": a.name} for a in authors]
|
||||
|
||||
|
||||
# Debug endpoint to view all keywords
|
||||
@router.get("/keywords")
|
||||
async def debug_keywords(db: AsyncSession = Depends(get_db)):
|
||||
"""🎯 Debug endpoint to view all keywords - THE HEART OF THE SYSTEM!"""
|
||||
result = await db.execute(select(Keyword))
|
||||
keywords = result.scalars().all()
|
||||
return [{"id": k.id, "name": k.name} for k in keywords]
|
||||
Loading…
Add table
Add a link
Reference in a new issue