Merhabalar;
models.py :
class menemen(models.Model):
soganmiktar = models.CharField()
domatmiktar = models.CharField()
Bu modelden yeni nesneler oluşturduktan sonra template üzerinde göstermek üzere o nesneleri nasıl getirebilirim?
Merhabalar;
models.py :
class menemen(models.Model):
soganmiktar = models.CharField()
domatmiktar = models.CharField()
Bu modelden yeni nesneler oluşturduktan sonra template üzerinde göstermek üzere o nesneleri nasıl getirebilirim?
django/
/proje//
//urls.py
/uygulama//
//views py
//templates///
///model.html
/manage.py
urls.py
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
import uygulama.views as uygulama
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', uygulama.model_goster),
] + staticfiles_urlpatterns()
views.py
from .models import model
def model_goster(request):
tum_modeller = model.objects.all()
return render(request, 'model.html' , 'tum_modleler': tum_modeller)
model.html
<h1> {{ tum_modeller }} </h1>
Bu ne işe yarıyor? .
Şimdi sen urls.py içindeki urlpatterns içinde sitenin url adreslerini yazıyorsun örneğin admin panelinin sayfa adresi veya ana sayfanın adresi gibi bunlara ek olarak sonuna staticfiles_urlpatterns() yazarak static klasöründeki dosyaların yollarınıda ekliyorsun.
Static klasörünü django uygulamanın ve projenin olduğu klasörde sen oluşturuyorsun ve içinede css, js, resim/video dosyalarını bırakıyorsun yani örnek olarak templates klasörünün içindeki html dosyalarını güzelleştirmek için ihtiyaç duyduğun css dosyalarını static klasörünün içinde oluşturuyorsun. Bu css dosyasının html içinde yolunu
ornek.html
{% load static %}
<link rel="stylesheet" type="text/css" href="{% static "css/ornek.css" %}">
bunları yazarak belirtiyorsun.
Burada ornek.html 'ın css dosyasının yolunu belirtiyorsun.
django/
/proje
/uygulama//
//views.py
//templates///
///ornek.html
/static//
//ornek.css
/manage.py
Hata aldım?:
views.py
from django.shortcuts import render
from .models import Yazi
def index(req):
modeller = Yazi.objects.all()
print(modeller)
return render(req, "blog/index.html", {"model": modeller})
def ilk(req):
return render(req, "blog/ilk.html")
Hata:
Traceback (most recent call last):
File "/usr/lib/python3.6/wsgiref/handlers.py", line 137, in run
self.result = application(self.environ, self.start_response)
File "/home/erdem/.local/lib/python3.6/site-packages/django/contrib/staticfiles/handlers.py", line 65, in __call__
return self.application(environ, start_response)
File "/home/erdem/.local/lib/python3.6/site-packages/django/core/handlers/wsgi.py", line 141, in __call__
response = self.get_response(request)
File "/home/erdem/.local/lib/python3.6/site-packages/django/core/handlers/base.py", line 75, in get_response
response = self._middleware_chain(request)
File "/home/erdem/.local/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
response = response_for_exception(request, exc)
File "/home/erdem/.local/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
File "/home/erdem/.local/lib/python3.6/site-packages/django/core/handlers/exception.py", line 125, in handle_uncaught_exception
return debug.technical_500_response(request, *exc_info)
File "/home/erdem/.local/lib/python3.6/site-packages/django/views/debug.py", line 94, in technical_500_response
html = reporter.get_traceback_html()
File "/home/erdem/.local/lib/python3.6/site-packages/django/views/debug.py", line 332, in get_traceback_html
t = DEBUG_ENGINE.from_string(fh.read())
File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 9735: ordinal not in range(128)
index.html
<!DOCTYPE html>
<title> Blog | Ramazan Osmanoğlu </title>
<div align="center">
<h1> Blog Sayfası </h1>
{% for a in model %}
{{a}}
{% endfor %}
</div>
models.py
from django.db import models
class Yazi(models.Model):
baslik = models.CharField(max_length=200)
yazilar = models.TextField()
def __str__(self):
return self.baslik
Site resmi:
Admin sayfasında Yazi modeline bakmaya çalışınca:
Bu hata tamamen Django ile alakali. Ben super kullanici olusturmaya calisinca da ayni hatayi almistim. Sebebi ise, olustururken "Kullanıcı adı: " seklinde soruyor ve bu da sorun cikariyor. Sistem dilini ingilizce yapip sorunu cozdum.