Como mostrar mensaje con validates_presence_of en version beta 2

edited abril 2013 in Dudas/Problemas
Buen dia como hago para mostrar mensaje en mi vista saludos
<?php 
class Nivel extends ActiveRecord {
protected function initialize(){
$this->validates_presence_of("descripcion","Messaje: Descripcion no puede estar vacia");
}
  public function graba(){
$Nivel = new Nivel();
$Nivel->descripcion = Input::post('descripcion');
$Nivel->status = 0;
$Nivel->save();

}

Comentarios

  • Estas haciendo el View::content() en tu vista?
  • el view content lo tengo en el template default 

    <?php
    if($controller_name=="index"){
    $titulo = "Bienvenido al Sistema de Control de Terrenos";
    $subtitulo ="";
    }
    else{
    $titulo = $controller_name;
    $titulo[0]=strtoupper($titulo[0]);
    if($action_name!="index"){
    $subtitulo = " | ";
    $subtitulo;
    $subtitulo = $subtitulo.$action_name;
    $subtitulo[0]=strtoupper($subtitulo[0]);
    }
    else{
    $subtitulo = "";
    }
    }
    ?>
    <!DOCTYPE html>
    <html lang="es">
     <head>
      <meta http-equiv='Content-type' content='text/html; charset=<?php echo APP_CHARSET ?>' />
      <title>Terrenos</title>
      <?php Tag::css('layout') ?>
      <?php 
    if($action_name=="index"){
    Tag::css($action_name);
    }
    else{
    Tag::css($controller_name.".".$action_name);
    }
    ?>
      <?php echo Html::includeCss() ?>
    </head>
    <body>
        <div id='content'>
            <div id='head'>             
                Sistema Control Terrenos
            </div>
            <div id='menu'>             
                <table>
    <tr>
    <td><a href="<?php echo PUBLIC_PATH ?>estado/index/" title="Estados">Estados</a></td>
    <td><a href="<?php echo PUBLIC_PATH ?>nivel/index/" title="Niveles">Niveles</a></td>
    <td>Municipios</td>
    <td>Secciones</td>
    <td>Acciones</td>
    </tr>
    </table>
            </div>
    <h2> <?php echo $titulo.$subtitulo; ?></h2>
    <div id="vista">
            <?php View::content(); ?>
    </div>
    <br>
            <?php View::partial('kumbia/footer') ?>
        </div>
    </body>
    </html>
  • Gambo Martín, deberías explicar un poquito más cual es el problema que tienes para poder entender y dar una posible solución.
    Creo entender que no te muestra el mensaje cuando el campo descripción viene vacío, por lo cual se me ocurre:
    ¿Realmente el campo descripción viene vacío desde el formulario?En tu código utilzas: 
    $this->validates_presence_of("descripcion","Messaje: Descripcion no puede estar vacia");
    Lo cual me parece incorrecto, el mensaje debería ir como 
    message con G, y lo has puesto con J.
    Cualquier cosa no dudes en avisar.
    Saludos

  • El View::content() del template es para mostrar la vista, sin embargo, en la vista tambien debe haber un View::content() para mostrar mensajes flash y cualquier otro contenido del buffer de salida.

    Saludos...!!!
  • Manouman primero una disculpa por lo enredoso de mi explicacion, es correcta la interpretacion que has hecho, y efectivamente si me faltaba ponerle la g en lugar de j y tambien me faltaba ponerle el View::content() en la vista, ya con sus dos aclaraciones a quedado resuelta mi duda de antemano muchas gracias.
  • Perfecto, solucionado!
Sign In or Register to comment.