{"id":1344,"date":"2017-04-12T14:28:01","date_gmt":"2017-04-12T13:28:01","guid":{"rendered":"https:\/\/www.kumbiaphp.com\/blog\/?p=1344"},"modified":"2020-03-07T22:59:32","modified_gmt":"2020-03-07T21:59:32","slug":"scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad","status":"publish","type":"post","link":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/","title":{"rendered":"ScaffoldController: Modificando comportamientos y contenidos"},"content":{"rendered":"<p>La entrega anterior hablamos acerca del uso de la t\u00e9cnica de<a href=\"https:\/\/www.kumbiaphp.com\/blog\/2017\/04\/03\/scaffolding-para-crud-abm-sencillos-y-no-tanto-primera-parte\/\"> Scaffolding para CRUD con KumbiaPHP<\/a> usando la clase <strong>ScaffoldController<\/strong>. Espero que muchos se hayan sorprendido gratamente con la funcionalidad que ciertamente ahorra mucho trabajo rutinario, ya que es altamente flexible.<\/p>\n<p>Para que se entusiasmen, dentro de las posibilidades \u00a0tenemos: reescribir m\u00e9todos y modificar comportamientos en controladores, modificar los archivos de vista, e incluso puedes crear tus propios scaffoldings. Pero bueno, vamos paso a paso.<\/p>\n<h2>Manos a la obra con ScaffoldController<\/h2>\n<p>Vamos a trabajar en base a supuestos. Supongamos que queremos mostrar el nombre de la categor\u00eda padre para aquellas categor\u00edas que est\u00e9n anidadas.<\/p>\n<p><a href=\"https:\/\/www.kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-sin-cambios-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1351 size-full\" src=\"https:\/\/www.kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-sin-cambios-1.png\" alt=\"Lista de categor\u00edas\" width=\"958\" height=\"405\" srcset=\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-sin-cambios-1.png 958w, https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-sin-cambios-1-300x127.png 300w, https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-sin-cambios-1-768x325.png 768w, https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-sin-cambios-1-940x397.png 940w\" sizes=\"auto, (max-width: 958px) 100vw, 958px\" \/><\/a><\/p>\n<p>Como se ve en la lista, las categor\u00edas relacionadas s\u00f3lo se ven con su identificador.<br \/>\nPor lo tanto, vamos a modificar <strong>la fuente de datos<\/strong> que pasamos a la vista <strong>Index<\/strong> para que \u00e9sta pueda presentar los contenidos respectivos.<\/p>\n<h2>En el modelo<\/h2>\n<p>Lo que vamos a hacer es crear un m\u00e9todo que cumpla con lo que queremos lograr: mostrar el contenido de la tabla de categor\u00edas incluyendo el nombre de la categor\u00eda padre en aquellas categor\u00edas que heredan de otra. De este modo\u00a0tendremos una modificaci\u00f3n como la siguiente:<\/p>\n<p>Archivo: <em>models\/categorias.php<\/em><\/p>\n<pre class=\" language-php\"><code class=\"\" data-line=\"\">&lt;span class=&quot;token delimiter&quot;&gt;&lt;?php&lt;\/span&gt;\n\n&lt;span class=&quot;token keyword&quot;&gt;class&lt;\/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Categorias&lt;\/span&gt; &lt;span class=&quot;token keyword&quot;&gt;extends&lt;\/span&gt; &lt;span class=&quot;token class-name&quot;&gt;ActiveRecord&lt;\/span&gt; \n&lt;span class=&quot;token punctuation&quot;&gt;{&lt;\/span&gt;\n\n    &lt;span class=&quot;token keyword&quot;&gt;function&lt;\/span&gt; &lt;span class=&quot;token function&quot;&gt;getCategorias&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;\/span&gt;&lt;span class=&quot;token variable&quot;&gt;$page&lt;\/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;\/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;\/span&gt; \n    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;\/span&gt;\n        &lt;span class=&quot;token keyword&quot;&gt;return&lt;\/span&gt; &lt;span class=&quot;token variable&quot;&gt;$this&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;-&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;&gt;&lt;\/span&gt;&lt;span class=&quot;token function&quot;&gt;paginate&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;\/span&gt;\n            &lt;span class=&quot;token string&quot;&gt;&#039;columns: categorias.id, categorias.nombre, cat.nombre as categorias_id, categorias.creada_at, categorias.actualizada_in&#039;&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;\/span&gt; \n            &lt;span class=&quot;token string&quot;&gt;&#039;join: left outer join categorias cat on categorias.categorias_id = cat.id&#039;&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;\/span&gt;\n            &lt;span class=&quot;token string&quot;&gt;&quot;page: $page&quot;&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;\/span&gt; &lt;span class=&quot;token string&quot;&gt;&#039;order: categorias.id desc&#039;&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;\/span&gt;\n    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;\/span&gt;\n\n&lt;span class=&quot;token punctuation&quot;&gt;}&lt;\/span&gt;<\/code><\/pre>\n<h2>En el controlador<\/h2>\n<p>El segundo cambio lo haremos desde el controlador, para cargar los cambios que hemos hecho en el modelo. Lo que <strong>reemplazaremos<\/strong> (porque es una sobre escritura de index en ScaffoldController)\u00a0ser\u00e1 la funci\u00f3n <strong>index<\/strong> tal como se muestra a continuaci\u00f3n.<\/p>\n<p>Archivo: controllers<em>\/categorias_controller.php<\/em><\/p>\n<pre class=\" language-php\"><code class=\"\" data-line=\"\">&lt;span class=&quot;token delimiter&quot;&gt;&lt;?php&lt;\/span&gt;\n&lt;span class=&quot;token keyword&quot;&gt;class&lt;\/span&gt; &lt;span class=&quot;token class-name&quot;&gt;CategoriasController&lt;\/span&gt; &lt;span class=&quot;token keyword&quot;&gt;extends&lt;\/span&gt; &lt;span class=&quot;token class-name&quot;&gt;ScaffoldController&lt;\/span&gt;\n&lt;span class=&quot;token punctuation&quot;&gt;{&lt;\/span&gt;\n    &lt;span class=&quot;token keyword&quot;&gt;public&lt;\/span&gt; &lt;span class=&quot;token variable&quot;&gt;$model&lt;\/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;\/span&gt; &lt;span class=&quot;token string&quot;&gt;&#039;Categorias&#039;&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;\/span&gt;\n\n    &lt;span class=&quot;token keyword&quot;&gt;public&lt;\/span&gt; &lt;span class=&quot;token keyword&quot;&gt;function&lt;\/span&gt; &lt;span class=&quot;token function&quot;&gt;index&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;\/span&gt;&lt;span class=&quot;token variable&quot;&gt;$page&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;\/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;\/span&gt;\n    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;\/span&gt;\n        &lt;span class=&quot;token variable&quot;&gt;$this&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;-&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;&gt;&lt;\/span&gt;&lt;span class=&quot;token property&quot;&gt;data&lt;\/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;\/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;(&lt;\/span&gt;&lt;span class=&quot;token keyword&quot;&gt;new&lt;\/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Categorias&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;-&lt;\/span&gt;&lt;span class=&quot;token operator&quot;&gt;&gt;&lt;\/span&gt;&lt;span class=&quot;token function&quot;&gt;getCategorias&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;\/span&gt;&lt;span class=&quot;token variable&quot;&gt;$page&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;\/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;\/span&gt;\n    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;\/span&gt;\n \n&lt;span class=&quot;token punctuation&quot;&gt;}&lt;\/span&gt;<\/code><\/pre>\n<p><!--more--><\/p>\n<h2>Ahora se ve as\u00ed<\/h2>\n<p>Con esto lograremos que el listado cumpla que el requerimiento solicitado.<\/p>\n<p><a href=\"https:\/\/www.kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1352 size-full\" src=\"https:\/\/www.kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios-1.png\" alt=\"Lista modificada de las categor\u00edas\" width=\"967\" height=\"400\" srcset=\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios-1.png 967w, https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios-1-300x124.png 300w, https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios-1-768x318.png 768w, https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios-1-940x389.png 940w\" sizes=\"auto, (max-width: 967px) 100vw, 967px\" \/><\/a><\/p>\n<h2>\u00bfPor qu\u00e9 funciona?<\/h2>\n<p>Como puede verse, con cambios m\u00ednimos hemos logrado adecuar la presentaci\u00f3n de la vista <strong>index<\/strong> sin actualizar su archivo. Lo que hemos hecho principalmente es un reemplazo dentro de la metadata de ActiveRecord. Scaffolding espera contar con todos los atributos de la tabla de categor\u00edas (id, nombre, categorias_id, creada_at, actualizada_in). Nosotros hemos modificado\u00a0la salida cambiando categorias_id por nombre desde categorias (nombre as categorias_id). As\u00ed hemos logrado que el pintador de la vista index haga su tarea sin enterarse del reemplazo que hemos hecho a nivel de modelo.<\/p>\n<p>Bueno, eso es todo por esta semana. En la siguiente entrega veremos c\u00f3mo modificar una vista particular para hacerla parecer seg\u00fan nuestros requerimientos. (<a href=\"https:\/\/www.kumbiaphp.com\/blog\/2017\/05\/16\/scaffoldcontroller-modificando-vistas\/\">ver parte 3<\/a>)<\/p>\n<h2>\u00daltimas recomendaciones<\/h2>\n<p>Recuerden que pueden revisar el c\u00f3digo desde:\u00a0<a href=\"https:\/\/github.com\/nelsonrojas\/Scaffold-KumbiaPHP\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/nelsonrojas\/Scaffold-KumbiaPHP<\/a><\/p>\n<p>No olvides visitarnos en\u00a0<a href=\"http:\/\/slack.kumbiaphp.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/slack.kumbiaphp.com\/<\/a> para contarnos c\u00f3mo te va usando <a href=\"https:\/\/www.kumbiaphp.com\" target=\"_blank\" rel=\"noopener noreferrer\">KumbiaPHP<\/a>. Si necesitas apoyo procuraremos estar atentos. Adem\u00e1s, si te gusta lo que escribimos comp\u00e1rtelo ya mismo con tus amigos y colegas.<\/p>\n<p>Saludos y larga vida a KumbiaPHP!<\/p>\n<p>Con cari\u00f1o desde Talca, Chile:\u00a0<a href=\"https:\/\/twitter.com\/nelsonrojas\" target=\"_blank\" rel=\"noopener noreferrer\">@nelsonrojas<\/a><\/p>\n<p>Ps: Si te perdiste lo que escribimos la semana pasada, puedes leerlo aqu\u00ed:\u00a0<a href=\"https:\/\/www.kumbiaphp.com\/blog\/2017\/04\/03\/scaffolding-para-crud-abm-sencillos-y-no-tanto-primera-parte\/\">https:\/\/www.kumbiaphp.com\/blog\/2017\/04\/03\/scaffolding-para-crud-abm-sencillos-y-no-tanto-primera-parte\/<\/a><\/p>\n<p>Si quieres ver lo que sigue: <a href=\"https:\/\/www.kumbiaphp.com\/blog\/2017\/05\/16\/scaffoldcontroller-modificando-vistas\/\">ScaffoldController: Modificando vistas<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>La entrega anterior hablamos acerca del uso de la t\u00e9cnica de Scaffolding para CRUD con KumbiaPHP usando la clase&hellip;<\/p>\n","protected":false},"author":18,"featured_media":1346,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[20,8,9],"tags":[38,36,111],"class_list":["post-1344","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-activerecord","category-documentacion","category-tutoriales-y-screencast","tag-crud","tag-ejemplos","tag-scaffold"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ScaffoldController: Modificando comportamientos y contenidos - KumbiaPHP Framework PHP en espa\u00f1ol<\/title>\n<meta name=\"description\" content=\"ScaffoldController: Reescribir m\u00e9todos y modificar comportamientos, modificar los archivos de vista incluso puedes crear tus propios scaffoldings.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ScaffoldController: Modificando comportamientos y contenidos - KumbiaPHP Framework PHP en espa\u00f1ol\" \/>\n<meta property=\"og:description\" content=\"ScaffoldController: Reescribir m\u00e9todos y modificar comportamientos, modificar los archivos de vista incluso puedes crear tus propios scaffoldings.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\" \/>\n<meta property=\"og:site_name\" content=\"KumbiaPHP Framework PHP en espa\u00f1ol\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kumbia.fw\" \/>\n<meta property=\"article:published_time\" content=\"2017-04-12T13:28:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-03-07T21:59:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png\" \/>\n\t<meta property=\"og:image:width\" content=\"976\" \/>\n\t<meta property=\"og:image:height\" content=\"363\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Nelson Rojas\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@nelson955443098\" \/>\n<meta name=\"twitter:site\" content=\"@kumbiaphp\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nelson Rojas\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\"},\"author\":{\"name\":\"Nelson Rojas\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#\/schema\/person\/f321b5debe6a875d1d1d1154e4502ffb\"},\"headline\":\"ScaffoldController: Modificando comportamientos y contenidos\",\"datePublished\":\"2017-04-12T13:28:01+00:00\",\"dateModified\":\"2020-03-07T21:59:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\"},\"wordCount\":500,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png\",\"keywords\":[\"crud\",\"ejemplos\",\"scaffold\"],\"articleSection\":[\"ActiveRecord\",\"Documentaci\u00f3n\",\"Tutoriales y screencast\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\",\"url\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\",\"name\":\"ScaffoldController: Modificando comportamientos y contenidos - KumbiaPHP Framework PHP en espa\u00f1ol\",\"isPartOf\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png\",\"datePublished\":\"2017-04-12T13:28:01+00:00\",\"dateModified\":\"2020-03-07T21:59:32+00:00\",\"description\":\"ScaffoldController: Reescribir m\u00e9todos y modificar comportamientos, modificar los archivos de vista incluso puedes crear tus propios scaffoldings.\",\"breadcrumb\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage\",\"url\":\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png\",\"contentUrl\":\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png\",\"width\":976,\"height\":363,\"caption\":\"Vista index con categor\u00eda relacionada como texto\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/kumbiaphp.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ScaffoldController: Modificando comportamientos y contenidos\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#website\",\"url\":\"https:\/\/kumbiaphp.com\/blog\/\",\"name\":\"KumbiaPHP Framework PHP en espa\u00f1ol\",\"description\":\"Web &amp; app MVC PHP framework\",\"publisher\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kumbiaphp.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#organization\",\"name\":\"KumbiaPHP Framework PHP en espa\u00f1ol\",\"url\":\"https:\/\/kumbiaphp.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2015\/02\/logo.png\",\"contentUrl\":\"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2015\/02\/logo.png\",\"width\":432,\"height\":50,\"caption\":\"KumbiaPHP Framework PHP en espa\u00f1ol\"},\"image\":{\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kumbia.fw\",\"https:\/\/x.com\/kumbiaphp\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kumbiaphp.com\/blog\/#\/schema\/person\/f321b5debe6a875d1d1d1154e4502ffb\",\"name\":\"Nelson Rojas\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/35b46624735bd8094a5aaef0242fe02dbe01451b909a85608578c09417e38478?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/35b46624735bd8094a5aaef0242fe02dbe01451b909a85608578c09417e38478?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/35b46624735bd8094a5aaef0242fe02dbe01451b909a85608578c09417e38478?s=96&d=mm&r=g\",\"caption\":\"Nelson Rojas\"},\"description\":\"Especialista en c\u00f3digo de programaci\u00f3n y bases de datos, uso de herramientas Open Source, conferencista ocasional.\",\"sameAs\":[\"http:\/\/nelsonrojas.wordpress.com\",\"https:\/\/www.linkedin.com\/in\/nelson-rojas-nu\u00f1ez-888a60239\/\",\"https:\/\/x.com\/nelson955443098\",\"https:\/\/www.youtube.com\/@nelsonrojasnunez\"],\"url\":\"https:\/\/kumbiaphp.com\/blog\/author\/nelson-rojas\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ScaffoldController: Modificando comportamientos y contenidos - KumbiaPHP Framework PHP en espa\u00f1ol","description":"ScaffoldController: Reescribir m\u00e9todos y modificar comportamientos, modificar los archivos de vista incluso puedes crear tus propios scaffoldings.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/","og_locale":"es_ES","og_type":"article","og_title":"ScaffoldController: Modificando comportamientos y contenidos - KumbiaPHP Framework PHP en espa\u00f1ol","og_description":"ScaffoldController: Reescribir m\u00e9todos y modificar comportamientos, modificar los archivos de vista incluso puedes crear tus propios scaffoldings.","og_url":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/","og_site_name":"KumbiaPHP Framework PHP en espa\u00f1ol","article_publisher":"https:\/\/www.facebook.com\/kumbia.fw","article_published_time":"2017-04-12T13:28:01+00:00","article_modified_time":"2020-03-07T21:59:32+00:00","og_image":[{"width":976,"height":363,"url":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png","type":"image\/png"}],"author":"Nelson Rojas","twitter_card":"summary_large_image","twitter_creator":"@nelson955443098","twitter_site":"@kumbiaphp","twitter_misc":{"Escrito por":"Nelson Rojas","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#article","isPartOf":{"@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/"},"author":{"name":"Nelson Rojas","@id":"https:\/\/kumbiaphp.com\/blog\/#\/schema\/person\/f321b5debe6a875d1d1d1154e4502ffb"},"headline":"ScaffoldController: Modificando comportamientos y contenidos","datePublished":"2017-04-12T13:28:01+00:00","dateModified":"2020-03-07T21:59:32+00:00","mainEntityOfPage":{"@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/"},"wordCount":500,"commentCount":2,"publisher":{"@id":"https:\/\/kumbiaphp.com\/blog\/#organization"},"image":{"@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage"},"thumbnailUrl":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png","keywords":["crud","ejemplos","scaffold"],"articleSection":["ActiveRecord","Documentaci\u00f3n","Tutoriales y screencast"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/","url":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/","name":"ScaffoldController: Modificando comportamientos y contenidos - KumbiaPHP Framework PHP en espa\u00f1ol","isPartOf":{"@id":"https:\/\/kumbiaphp.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage"},"image":{"@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage"},"thumbnailUrl":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png","datePublished":"2017-04-12T13:28:01+00:00","dateModified":"2020-03-07T21:59:32+00:00","description":"ScaffoldController: Reescribir m\u00e9todos y modificar comportamientos, modificar los archivos de vista incluso puedes crear tus propios scaffoldings.","breadcrumb":{"@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#primaryimage","url":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png","contentUrl":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png","width":976,"height":363,"caption":"Vista index con categor\u00eda relacionada como texto"},{"@type":"BreadcrumbList","@id":"https:\/\/kumbiaphp.com\/blog\/2017\/04\/12\/scaffolding-con-kumbiaphp-modificando-comportamientos-y-contenidos-segun-nuestra-necesidad\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/kumbiaphp.com\/blog\/"},{"@type":"ListItem","position":2,"name":"ScaffoldController: Modificando comportamientos y contenidos"}]},{"@type":"WebSite","@id":"https:\/\/kumbiaphp.com\/blog\/#website","url":"https:\/\/kumbiaphp.com\/blog\/","name":"KumbiaPHP Framework PHP en espa\u00f1ol","description":"Web &amp; app MVC PHP framework","publisher":{"@id":"https:\/\/kumbiaphp.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kumbiaphp.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/kumbiaphp.com\/blog\/#organization","name":"KumbiaPHP Framework PHP en espa\u00f1ol","url":"https:\/\/kumbiaphp.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kumbiaphp.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2015\/02\/logo.png","contentUrl":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2015\/02\/logo.png","width":432,"height":50,"caption":"KumbiaPHP Framework PHP en espa\u00f1ol"},"image":{"@id":"https:\/\/kumbiaphp.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kumbia.fw","https:\/\/x.com\/kumbiaphp"]},{"@type":"Person","@id":"https:\/\/kumbiaphp.com\/blog\/#\/schema\/person\/f321b5debe6a875d1d1d1154e4502ffb","name":"Nelson Rojas","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/35b46624735bd8094a5aaef0242fe02dbe01451b909a85608578c09417e38478?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/35b46624735bd8094a5aaef0242fe02dbe01451b909a85608578c09417e38478?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/35b46624735bd8094a5aaef0242fe02dbe01451b909a85608578c09417e38478?s=96&d=mm&r=g","caption":"Nelson Rojas"},"description":"Especialista en c\u00f3digo de programaci\u00f3n y bases de datos, uso de herramientas Open Source, conferencista ocasional.","sameAs":["http:\/\/nelsonrojas.wordpress.com","https:\/\/www.linkedin.com\/in\/nelson-rojas-nu\u00f1ez-888a60239\/","https:\/\/x.com\/nelson955443098","https:\/\/www.youtube.com\/@nelsonrojasnunez"],"url":"https:\/\/kumbiaphp.com\/blog\/author\/nelson-rojas\/"}]}},"jetpack_featured_media_url":"https:\/\/kumbiaphp.com\/blog\/wp-content\/uploads\/2017\/04\/index-con-cambios.png","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/posts\/1344","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/users\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/comments?post=1344"}],"version-history":[{"count":21,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/posts\/1344\/revisions"}],"predecessor-version":[{"id":2390,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/posts\/1344\/revisions\/2390"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/media\/1346"}],"wp:attachment":[{"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/media?parent=1344"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/categories?post=1344"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kumbiaphp.com\/blog\/wp-json\/wp\/v2\/tags?post=1344"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}