# Individual Assignment PKPL

- Nama: Adelya Amanda
- NPM: 2306165616
- Kelas: PKPL-C
- Kelompok: C-45 (Anggota ke-5)

## Tentang Tugas
Tugas ini merupakan Weekly Individual Assignment 06 untuk mata kuliah Pengantar Keamanan Perangkat Lunak (PKPL) Semester Genap 2024/2025 di Fasilkom UI.

### Deskripsi Tugas
Membuat form validasi dan sanitasi input menggunakan Django framework dengan fokus pada:
- Validasi input menggunakan regular expression
- Sanitasi data sebelum penyimpanan
- Penanganan error dan feedback kepada pengguna

### Model Khusus
Sebagai anggota ke-5 kelompok C-45, saya mendapat variabel khusus:
1. Kode Ladang Pertanian
   - Tipe: String
   - Format: Prefiks "L-" diikuti 5 angka
   - Contoh valid: L-12345

2. Ukuran Ladang
   - Tipe: Integer
   - Rentang: 0-20.000 m²

## Instalasi dan Penggunaan

### Prasyarat
- Python 3.12.3 atau lebih baru
- Django 5.1.6 atau lebih baru

### Cara Menjalankan
1. Clone repository
```bash
git clone https://gitlab.cs.ui.ac.id/adelya.amanda/pkpl-individu-2306165616-adelya-amanda.git
```

2. Buat dan aktivasi virtual environment
```bash
python -m venv env
env\Scripts\activate
```

3. Install dependencies
```bash
pip install -r requirements.txt
```

4. Jalankan migrasi database
```bash
python manage.py migrate
```

5. Jalankan server development
```bash
python manage.py runserver
```

6. Akses aplikasi di browser
```
http://127.0.0.1:8000/
```

## Fitur
- Validasi input untuk semua field menggunakan regular expression
- Sanitasi nomor HP (menghapus karakter + dan -)
- Pesan error dalam Bahasa Indonesia
- Tampilan data yang berhasil disubmit

## Teknologi
- Python 3.12.3
- Django 5.1.6
- SQLite3