# Getting Started Django Py

{% embed url="<https://www.djangoproject.com/>" %}

#### **1. Instalasi Django**

Pastikan sudah menginstal Python (minimal versi 3.8). Kemudian, instal Django dengan perintah:

```bash
pip install django
```

#### **2. Membuat Proyek Django**

Buat proyek Django baru dengan perintah:

```bash
django-admin startproject myproject
cd myproject
```

Jalankan server untuk memastikan semuanya berjalan:

```bash
python manage.py runserver
```

Lalu buka [**http://127.0.0.1:8000/**](http://127.0.0.1:8000/) di browser.

#### **3. Membuat Aplikasi Django**

Di dalam proyek, kamu bisa membuat aplikasi:

```bash
python manage.py startapp myapp
```

Tambahkan `myapp` ke dalam `INSTALLED_APPS` di `settings.py`.

#### **4. Membuat Model (Database)**

Edit `models.py` dalam `myapp`:

```python
from django.db import models

class Artikel(models.Model):
    judul = models.CharField(max_length=200)
    isi = models.TextField()
    tanggal = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.judul
```

Jalankan migrasi database:

```bash
python manage.py makemigrations
python manage.py migrate
```

#### **5. Membuat Admin Panel**

Tambahkan model ke admin di `admin.py`:

```python
from django.contrib import admin
from .models import Artikel

admin.site.register(Artikel)
```

Akses admin panel:

```bash
python manage.py createsuperuser
python manage.py runserver
```

Buka [**http://127.0.0.1:8000/admin/**](http://127.0.0.1:8000/admin/) dan login.

#### **6. Membuat View dan Template**

Edit `views.py`:

```python
from django.shortcuts import render
from .models import Artikel

def home(request):
    artikel = Artikel.objects.all()
    return render(request, 'home.html', {'artikel': artikel})
```

Buat `urls.py` di `myapp`:

```python
from django.urls import path
from .views import home

urlpatterns = [
    path('', home, name='home'),
]
```

Tambahkan ke `urls.py` utama:

```python
from django.urls import include, path

urlpatterns = [
    path('', include('myapp.urls')),
]
```

Buat file template `templates/home.html`:

```html
<!DOCTYPE html>
<html>
<head><title>Home</title></head>
<body>
    <h1>Daftar Artikel</h1>
    {% for a in artikel %}
        <h2>{{ a.judul }}</h2>
        <p>{{ a.isi }}</p>
    {% endfor %}
</body>
</html>
```

#### **7. Jalankan dan Uji**

Jalankan server:

```bash
python manage.py runserver
```
