Jump to content

Añadir campo a la ficha de producto


Recommended Posts

Hola, buenos días.

 

Estoy intentando añadir un campo numérico (entero) que indique la superficie de un inmueble (modo catálogo para inmobiliaria).

 

1º) He añadido el campo "superficie" en las tablas "ps_product" y "ps_product_lang" de tipo INT.

 

2º) En el archivo "\classes\Product.php" he añadido el siguiente código:

 

public $superficie;
 
public static $definition = array(
 
'table' => 'product',
'primary' => 'id_product',
'multilang' => true,
'multilang_shop' => true,
'fields' => array(
 
'minimal_quantity' => array('type' => self::TYPE_INT, 'shop' => true, 'validate' => 'isUnsignedInt'),
'price' => array('type' => self::TYPE_FLOAT, 'shop' => true, 'validate' => 'isPrice', 'required' => true),
 
(...)
 
'superficie' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedId'),
 
(...)
 
3º) En el archivo "\admin????\themes\default\template\controllers\products\information.tpl" he añadido el siguiente código:
 
<!-- SUPERFICIE -->
<div class="form-group">
<label class="control-label col-lg-3" for="superficie">
<span class="label-tooltip" data-toggle="tooltip" title="SUPERFICIE">SUPERFICIE</span>
</label>
<div class="col-lg-5">
<input type="text" id="superficie" name="superficie" value="{$product->superficie|htmlentitiesUTF8}" />
</div>
</div>
<!-- FIN SUPERFICIE -->
 
Me aparece el nuevo campo en el BO pero por defecto el valor del textbox es "Array" aunque lo he declarado como entero.
 
Me guarda el valor introducido en base de datos (al guardar cambios), pero al abrir de nuevo la ficha de producto me aparece el textbox con el valor "Array".
 
Ruego encarecidamente si algún miembro del foro pudiese ayudarme.
 
Gracias de antemano y un saludo.
Link to comment
Share on other sites

Muchas gracias Enrique por tu respuesta, pero me sigue saliendo "Array" en el TextBox nuevo al recuperar datos,  pese a que guarda correctamente en BD.

 

No se si se te ocurre que podría ser, o a algún otro miembro del foro.

 

Gracias de antemano, porque me aprietan para sacar el proyecto y esto se me ha enquistado.

Link to comment
Share on other sites

Si el campo no es multilenguaje no hace falta que lo pongas en la tabla ps_product_lang (quitalo a ver si va por ahi..)

 

si no es multitienda idem para ps_product_shop

 

Es decir, solo la tabla product

 

 

Seguro que no has puesto 'lang' => true ? Esto hace que haya un array

 

array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt')

 

Quita también el |htmlentitiesUTF8 (esto no creo que sea.. pero ya puestos pruebalo)

Link to comment
Share on other sites

La has clavado Enrique, al quitar la columna "superficie" en ps_product_lang" me muestra el valor perfectamente.

 

¡No sé como me he rallado metiendo esa columna al ser un campo numérico!  :wacko:

 

GRACIAS DE VERDAD POR TU AYUDA

Link to comment
Share on other sites

  • nadie locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...