Modificando la página de contacto
Tras seguir los pasos para crear una pagina «Contacto». Declaramos una nueva vista css en apps/front/config/view.yml. Si no recordáis como hacer una página nueva podéis revisar los entregables anteriores. También hemos de añadir el widget que hemos incluido de contacto en el tutorial anterior. Y por último declaramos la nueva vista para la página creada:
stylesheets:
- layout
- typography
- navigation
- markdown
- form
Y declaramos la css guardándola en web/themeCoolWater/css/form.css:
/* all forms */
label {
display:block;
font-weight:bold;
margin: 7px 0;
}
input {
padding:3px;
border: 1px solid #E5F0FB;
font: normal 1em Verdana, sans-serif;
color:#777;
}
textarea {
width:400px;
padding:3px;
font: normal 1em Verdana, sans-serif;
border: 1px solid #E5F0FB;
height:100px;
display:block;
color:#777;
}
input.submit {
font: bold 12px Arial, Sans-serif;
height: 28px;
margin: 0;
padding: 2px 3px;
color: #fff;
background: #306bc1 url(../images/button-bg.jpg) repeat-x 0 0;
border: 1px solid #306bc1;
cursor: pointer;
}
/* content forms */
#dm_content form {
padding: 10px;
border: 1px solid #E5F0FB;
background: #F4F8FD;
}
#dm_content form .submit_wrap {
margin-top: 15px;
}
#dm_content .error_list,
#dm_content .error_list li {
display: inline;
color: red;
padding: 0;
}
#dm_content .has_error {
border-color: red;
}
#dm_content .form_valid {
margin: 10px 50px;
padding: 10px 0 10px 45px;
font: bold 1.3em/1.5em "Trebuchet MS", Tahoma, arial, Sans-serif;
color: #2361BA;
border: 1px solid #E5F0FB;
background: #F4F8FD url(../images/quote.jpg) no-repeat 8px 6px;
}
Tendremos la página de contacto hecha y podremos ver en la parte de administración los mensajes enviados desde Contenido/Contacto:
Creación de Sistema Blog
Hasta aquí hemos aprendido bastante y llega una de las partes que más me entretiene. Si hemos de crear un contenido administrable muchas veces se ha de programar manualmente todo el mantenimiento (Alta / Modificación / Eliminación). Vamos a implementar un sistema de Blog que nos generará todo el mantenimiento de nuestros artículos.
En primer lugar modificaremos el archivo config/doctrine/schema.yml para declarar nuestro modelo:
Article:
actAs:
DmSortable:
I18n:
fields: [ title, extract, body, is_active ]
actAs:
Timestampable:
DmVersionable:
columns:
title: { type: string(120), notnull: true }
extract: { type: string(2000), notnull: true }
body: { type: clob, extra: markdown }
image: { type: integer }
author: { type: integer, notnull: true }
is_active: { type: boolean, notnull: true, default: false }
relations:
Image:
class: DmMedia
local: image
foreignAlias: Articles
Author:
class: DmUser
local: author
foreignAlias: Articles
Podéis encontrar la explicación a lo que implementamos aquí. Como hemos modificado el modelo de datos (los datos de la BBDD) deberemos volver a ejecutar la comparación y creación de tablas:
php symfony doctrine:generate-migrations-diff
php symfony doctrine:migrate
php symfony dm:setup
Ejecutando los 3 comandos anteriores hemos creado el modelo en lib/model/doctrine/Article.class.php, el formulario en lib/form/doctrine/ArticleForm.class.php y tabla artículos en la BBDD.
Modificaremos el archivo config/dm/modules.yml para el modelo:
Content:
Global:
main:
components:
header:
footer:
Blog:
article:
Y generaremos la interficie administrativa:
php symfony dm:setup
Si vamos a apps/admin/modules/article podremos ver que se ha generado un nuevo módulo de administración, apps/admin/modules/article. Ahora ya podemos editar nuestros artículos desde Contenido/Blog/ Artículos
En breve prepararemos la parte vista de nuestros artículos.
Posts relacionados
-
10 marzo, 2025 -
19 diciembre, 2015 Realizar una copia de la aplicación Mail en Mac
-
7 diciembre, 2015 Implementando Redsys sistema de pruebas
Deja una contestación Cancelar
Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.
Archivo
- marzo 2025 (2)
- diciembre 2015 (6)
- noviembre 2015 (5)
- octubre 2015 (3)
- septiembre 2015 (2)
- agosto 2015 (8)
- mayo 2015 (2)
- abril 2015 (3)
- julio 2013 (1)
- julio 2012 (1)
- enero 2012 (3)
- diciembre 2011 (3)
- noviembre 2011 (1)
- febrero 2011 (5)
- noviembre 2010 (4)
- septiembre 2010 (2)
- julio 2010 (1)
- junio 2010 (2)
- marzo 2010 (6)
- febrero 2010 (3)
- enero 2010 (1)
- diciembre 2009 (6)
- noviembre 2009 (2)
- octubre 2009 (18)
- septiembre 2009 (21)
1 Comentario
Diem Project Día 3 (Widgets) | Uy perdón