Javier Delgado Posted September 23, 2016 Share Posted September 23, 2016 Hola a todos. Estoy intentado realizar un override para añadir en el listado de productos una nueva columna. Ya me aparece y es totalmente funcional, pero tengo un parde dudas. El override conciste en modificar una parte para cuando se actualice no se pierda esa modificacion y en colocar ese añadido en la carpeta de override con el mismo nombre del archivo overrizado.. El archivo que estoy modificando es el AdminPorductsController, lo copio en la carpeta de override, añado la nueva columna,pero si no lo copio entero, conjuntamente con la parte modificada, solamente me aparecen la columna nueva. Todas las demas como id, referencia, se pierden. Estoy haciendo mal el override? Mi conocimientos se basan en acierto/error. JEJE. Como puedo solo añadir la parte modificada y no todo el archivo completo.? Link to comment Share on other sites More sharing options...
ventura Posted September 24, 2016 Share Posted September 24, 2016 Tienes que sobreescribir el contenido completo de la funcion que hayas modificado http://doc.prestashop.com/display/PS16/Overriding+default+behaviors Link to comment Share on other sites More sharing options...
joseantgv Posted September 24, 2016 Share Posted September 24, 2016 Hola a todos. Estoy intentado realizar un override para añadir en el listado de productos una nueva columna. Ya me aparece y es totalmente funcional, pero tengo un parde dudas. El override conciste en modificar una parte para cuando se actualice no se pierda esa modificacion y en colocar ese añadido en la carpeta de override con el mismo nombre del archivo overrizado.. El archivo que estoy modificando es el AdminPorductsController, lo copio en la carpeta de override, añado la nueva columna,pero si no lo copio entero, conjuntamente con la parte modificada, solamente me aparecen la columna nueva. Todas las demas como id, referencia, se pierden. Estoy haciendo mal el override? Mi conocimientos se basan en acierto/error. JEJE. Como puedo solo añadir la parte modificada y no todo el archivo completo.? Puedes copiar tu función? Tienes que sobreescribir el contenido completo de la funcion que hayas modificado http://doc.prestashop.com/display/PS16/Overriding+default+behaviors No es necesario, se puede ejecutar parent::functionOverrideada(). Link to comment Share on other sites More sharing options...
ventura Posted September 24, 2016 Share Posted September 24, 2016 Puedes copiar tu función? No es necesario, se puede ejecutar parent::functionOverrideada(). Asi es, pensaba que se creaba un metodo nuevo Seria algo asi, dependiendo del campo que vayas a añadir <?php class AdminProductsController extends AdminProductsControllerCore { public function __construct() { parent::__construct(); //Añadir nueva tabla $this->_join .= ' LEFT JOIN '._DB_PREFIX_.'product_supplier ps ON ( a.id_product = ps.id_product AND ps.id_product_attribute = 0 )'; //Nuevo campo a añadir $this->fields_list['product_supplier_reference'] = array( 'title' => $this->l('Supplier Reference'), 'align' => 'left', 'filter_key' => 'ps!product_supplier_reference', ); } } Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now