first commit

This commit is contained in:
2026-08-04 19:24:21 +02:00
commit 46901fbb7f
20 changed files with 5364 additions and 0 deletions
+207
View File
@@ -0,0 +1,207 @@
AYUDA DJANGO
\============
Proyecto Django: Blog Simple
Este proyecto creará un blog básico donde los usuarios podrán ver una lista de publicaciones y acceder a los detalles de cada una.
Paso 1: Instalar Django
Si no tienes Django instalado, ejecuta:
pip install django
Paso 2: Crear un Proyecto Django
django-admin startproject blog\_project
cd blog\_project
Paso 3: Crear la Aplicación del Blog
python manage.py startapp blog
Registre la aplicación en blog\_project/settings.pydentro de INSTALLED\_APPS:
INSTALLED\_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog', # Agregamos nuestra aplicación
]
Paso 4: Definir el modelo de publicación
Edita blog/models.py:
from django.db import models
class Post(models.Model):
title = models.CharField(max\_length=200)
content = models.TextField()
created\_at = models.DateTimeField(auto\_now\_add=True)
def \_\_str\_\_(self):
return self.title
Aplica las migraciones para crear la tabla en la base de datos:
python manage.py makemigrations
python manage.py migrate
Paso 5: Registrar el Modelo en el Panel de Administración
Edita blog/admin.py:
from django.contrib import admin
from .models import Post
admin.site.register(Post)
Crea un superusuario:
python manage.py createsuperuser
Corre el servidor y accede al panel de administración en http://127.0.0.1:8000/admin:
python manage.py runserver
Desde ahí, puedes agregar publicaciones manualmente.
Paso 6: Crear las Vistas y URL
Edita blog/views.py:
from django.shortcuts import render, get\_object\_or\_404
from .models import Post
def lista\_posts(request):
posts = Post.objects.all().order\_by('-created\_at')
return render(request, 'blog/lista\_posts.html', {'posts': posts})
def detalle\_post(request, post\_id):
post = get\_object\_or\_404(Post, id=post\_id)
return render(request, 'blog/detalle\_post.html', {'post': post})
Crea blog/urls.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.lista\_posts, name='lista\_posts'),
path('post/<int:post\_id>/', views.detalle\_post, name='detalle\_post'),
]
Registra las rutas en blog\_project/urls.py:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('blog.urls')),
]
Paso 7: Crear las Plantillas HTML
Dentro de blog/templates/blog/, crea lista\_posts.html:
<!DOCTYPE html>
<html>
<head>
<title>Blog</title>
</head>
<body>
<h1>Publicaciones</h1>
<ul>
{% for post in posts %}
<li>
<a href="{% url 'detalle\_post' post.id %}">{{ post.title }}</a>
({{ post.created\_at|date:"d M Y" }})
</li>
{% endfor %}
</ul>
</body>
</html>
Crea detalle\_post.html:
<!DOCTYPE html>
<html>
<head>
<title>{{ post.title }}</title>
</head>
<body>
<h1>{{ post.title }}</h1>
<p>{{ post.created\_at|date:"d M Y" }}</p>
<p>{{ post.content }}</p>
<a href="{% url 'lista\_posts' %}">Volver al blog</a>
</body>
</html>
Paso 8: Ejecutar el Proyecto
Corre el servidor:
python manage.py runserver
Abre http://127.0.0.1:8000/y prueba la aplicación.