Genel

DJANGO UYGULAMA

Replit’te Yeni Proje Oluşturma

  1. Replit’e giriş yapın. (Replit web sitesi)
  2. Yeni bir repl oluşturun:
    • Sağ üstteki “Create Repl” düğmesine tıklayın.
    • Template kısmında Python‘u seçin.
    • Projeye bir isim verin (örneğin, django-blog).
    • “Create Repl” butonuna tıklayın.

2. Django’yu Yükleme

Replit’te Django’yu kurmak için, sol tarafta yer alan “Shell” bölümüne gidin ve şu komutu çalıştırın:

pip install django

Bu komut, Django’yu projeye yükleyecektir.


3. Django Projesi Oluşturma

Django projesini başlatmak için şu komutları sırasıyla çalıştırın:

a) Django Projesi Başlatma

django-admin startproject blog .
  • Bu komut, bir Django projesi oluşturur.
  • . (nokta), proje dosyalarının ana dizine oluşturulmasını sağlar.

4. Django Uygulaması (App) Oluşturma

Blog yazılarımızı oluşturmak için bir uygulama başlatmamız gerekiyor. Bunun için:

python manage.py startapp posts
  • Bu komut, posts adında bir Django uygulaması oluşturur.

5. Uygulamayı Ayarlara Ekleyin

blog/settings.py dosyasını açın ve INSTALLED_APPS listesine posts uygulamasını ekleyin:

INSTALLED_APPS = [
'posts',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]

6. Blog Yazıları İçin Model Tanımlama

posts/models.py dosyasını açın ve aşağıdaki kodu ekleyin:

from django.db import models

class BlogPost(models.Model):
title = models.CharField(max_length=200) # Başlık
content = models.TextField() # İçerik
published_date = models.DateTimeField(auto_now_add=True) # Yayınlanma tarihi

def __str__(self):
return self.title

7. Veritabanını Güncelleme

Modeli veritabanına eklemek için şu komutları çalıştırın:

Değişiklikleri kaydet

python manage.py makemigrations

Veritabanını oluştur

python manage.py migrate

    8. Admin Paneli İçin Superuser Oluşturma

    Admin paneline giriş yapabilmek için bir süper kullanıcı oluşturun:

    python manage.py createsuperuser
    • Kullanıcı adı, e-posta ve şifreyi girdikten sonra süper kullanıcı oluşturulacaktır.

    9. Admin Paneline Model Ekleyin

    posts/admin.py dosyasını açın ve şu kodu ekleyin:

    from django.contrib import admin
    from .models import BlogPost

    admin.site.register(BlogPost)

    Bu, BlogPost modelini admin panelinde görünür hale getirecektir.


    10. View ve Template Ayarları

    a) Görünüm (View) Ekleyin

    posts/views.py dosyasını açın ve aşağıdaki kodu ekleyin:

    from django.shortcuts import render
    from .models import BlogPost

    def home(request):
    posts = BlogPost.objects.all()
    return render(request, 'home.html', {'posts': posts})

    b) Şablon (Template) Ekleyin

    • posts/templates adlı bir klasör oluşturun.
    • Bu klasörün içinde home.html adında bir dosya oluşturun ve şu kodları ekleyin:
    <html>
    <html>
    <head>
        <title>Blog</title>
    </head>
    <body>
        <h1>Blog Yazıları</h1>
        <ul>
            {% for post in posts %}
                <li><strong>{{ post.title }}</strong> - {{ post.published_date }}</li>
                <p>{{ post.content }}</p>
            {% endfor %}
        </ul>
    </body>
    </html>
    

    11. URL’leri Ayarlama

    a) Uygulama URL’leri

    posts/urls.py adında bir dosya oluşturun ve şu kodları ekleyin:

    from django.urls import path
    from . import views

    urlpatterns = [
    path('', views.home, name='home'),
    ]

    b) Proje URL’leri

    blog/urls.py dosyasını açın ve şu şekilde düzenleyin:

    from django.contrib import admin
    from django.urls import path, include

    urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('posts.urls')), # Uygulama URL'lerini dahil et
    ]

    12. Sunucuyu Çalıştırma

    Replit’te Django sunucusunu başlatmak için şu komutu çalıştırın:

    python manage.py runserver 0.0.0.0:8000
    • Replit otomatik olarak bir URL oluşturur ve bu URL’yi tıklayarak projenizi görebilirsiniz.

    13. Admin Panelini Kullanma

    • Replit’teki admin paneline gitmek için /admin ekleyin (ör. https://<replit_url>/admin).
    • Süper kullanıcı bilgileriyle giriş yaparak blog yazıları ekleyebilir veya düzenleyebilirsiniz.

    14. Projenizi Yayınlama

    • Replit, projenizi otomatik olarak bir web bağlantısı üzerinden erişilebilir hale getirir.

    HATALAR

    settings.py Dosyasını Açın

    • blog/settings.py dosyasını bulun ve düzenleyin.

    ALLOWED_HOSTS Listesine Replit URL’sini Ekleyin

    • ALLOWED_HOSTS ayarını bulun.
    • Bu listeye Replit URL’nizi ekleyin.
    • Replit URL’si hata mesajında belirtilmiştir (örneğin: b4aaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pike.replit.dev).
    • Bu URL, Replit’in Django projeniz için oluşturduğu benzersiz alan adıdır.
    ALLOWED_HOSTS = ['b4aaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pike.replit.dev']

    Sunucuyu Yeniden Başlatın

    • Değişikliklerden sonra Django sunucusunu yeniden başlatın:
    python manage.py runserver 0.0.0.0:8000

    Admin Paneline Erişim:

    • Replit tarafından oluşturulan özel URL’yi kullanarak projenizi tarayıcıda görüntüleyebilirsiniz.
    • http://b4aaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pike.replit.dev

    Django admin paneline giriş yapmak için, URL’nizin sonuna /admin ekleyin:

    • b4aaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pike.replit.dev/admin

    Başka Bir Port Deneyin

    • Replit’teki varsayılan port 8000 olabilir, ancak farklı bir port kullanmayı da deneyebilirsiniz.
    • Django sunucusunu farklı bir portta başlatın:
    • python manage.py runserver 0.0.0.0:8080

    *OPSİYONEL

    Tüm Etki Alanlarını Kabul Etmek İçin

    Geliştirme ortamında, güvenlik kaygısı olmadan tüm etki alanlarını kabul etmek isterseniz:

    ALLOWED_HOSTS = [‘*’]

    *tavsiye edilmez!

    ÖNERİ

    SERTİFİKALI EĞİTİM

    Bir cevap yazın

    E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir