Student Papers Tablosu RLS Politikaları#
Student Papers tablosu için Row Level Security politikalarının detaylı açıklamaları.
Planlanan Politikalar#
1. Students can view own papers#
Öğrenciler sadece kendi sınav kağıtlarını görüntüleyebilir.
-- İçeriği buraya ekleyinizAmaç: Öğrencinin sadece kendi sınav sonuçlarını görmesini sağlar.
Koşul:
- Kullanıcı giriş yapmış olmalı
- Kullanıcının rolü student olmalı
- Kağıdın student_id’si kullanıcının id’si ile eşleşmeli
- Kağıt durumu ‘published’ olmalı (öğretmen tarafından yayınlanmış)
2. Teachers can view class papers#
Öğretmenler kendi sınıflarındaki sınav kağıtlarını görüntüleyebilir.
-- İçeriği buraya ekleyinizAmaç: Öğretmenin kendi sınıflarındaki tüm öğrenci kağıtlarını görmesini sağlar.
Koşul:
- Kullanıcı giriş yapmış olmalı
- Kullanıcının rolü teacher olmalı
- Kağıdın bağlı olduğu sınav, öğretmenin sınıflarından birine ait olmalı
3. Teachers can evaluate papers#
Öğretmenler sınav kağıtlarını değerlendirebilir ve puanlayabilir.
-- İçeriği buraya ekleyinizAmaç: Öğretmenin sınav kağıtlarına puan vermesi ve geri bildirim eklemesini sağlar.
Koşul:
- Kullanıcı giriş yapmış olmalı
- Kullanıcının rolü teacher olmalı
- Sadece teacher_score ve feedback alanları güncellenebilir
Özel Durumlar#
Yayınlanmamış Kağıtlar#
Öğrenciler sadece ‘published’ durumundaki kağıtları görmelidir.
AND paper_status = 'published'AI Puanı vs Öğretmen Puanı#
- Öğrenciler: Sadece teacher_score’u görür
- Öğretmenler: Hem ai_score hem de teacher_score’u görür
Test Senaryoları#
Başarılı Senaryo - Öğrenci Kendi Kağıdını Görür#
-- Öğrenci kendi kağıdını sorgular
SELECT * FROM student_papers
WHERE student_id = current_student_id
AND paper_status = 'published';
-- BaşarılıBaşarısız Senaryo - Öğrenci Başkasının Kağıdını Görmeye Çalışır#
-- Öğrenci başka öğrencinin kağıdını görmeye çalışır
SELECT * FROM student_papers WHERE student_id = other_student_id;
-- Boş sonuç (RLS filtreler)İlgili Tablolar#
public.student_paperspublic.examspublic.classespublic.userspublic.roles
Notlar#
- Öğrenci sadece yayınlanmış kağıtları görür
- Öğretmen tüm kağıtları yönetir
- AI puanı ile öğretmen puanı ayrı tutulur
- Multi-tenant okul kontrolü eklenmeli
- Politikalar henüz oluşturulmadı (planlanan)