Jump to content

[résolu] P.S 1.6 : mauvaise valeur dans champ produit


Recommended Posts

Bonjour,

 

J'ai ajouté un champ perso. dans le BO.

Il me permet de spécifier l'URL de la vidéo du produit.

J'ai bien le champ qui s'affiche, je peux ajouter ma valeur et elle s'enregistre bien dans la base.

 

Si j'affiche ma fiche produit, j'arrive à voir la valeur.

 

en revanche, quand je retourne sur l'édition du produit, je me retrouve avec la valeur "Array" dans le champ. Et si j'enregistre à nouveau, je perds mon information de base et me retrouve avec la valeur Array en base.

 

Pour info, j'ai fait ceci :

Product.php :

<?php
 
class Product extends ProductCore
{
    public $video;
 
    public function __construct($id_product = null, $full = false, $id_lang = null, $id_shop = null, Context $context = null)
    {
      Product::$definition['fields']['video'] = array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => 'isString');
      parent::__construct($id_product, $full, $id_lang, $id_shop, $context);
    }
 
}

et dans informations.tpl :

<div class="form-group">
		<label class="control-label col-lg-3" for="video">
			<span class="label-tooltip" data-toggle="tooltip"
			title="{l s='Product Video'} {l s='Allowed special characters:'} .-_#\">
				{$bullet_common_field} {l s='Video URL'}
			</span>
		</label>
		<div class="col-lg-5">
			<input type="text" id="video" name="video" value="{$product->video}" />
		</div>
	</div>

(tout ça dans les bons overides !)

 

Avez-vous une idée pour moi ???

 

Merci

Edited by magicJu (see edit history)
Link to comment
Share on other sites

Bonjour,

 

Vous avez définie la vidéo comme étant un champs traduisible :

'lang' => true

Par contre, au niveau de votre form, vous ne gérez pas le multilingue et avez donc un Array des différentes langues en retour.

 

Je ne pense pas que votre lien soit différent suivant la langue et vous pourvez donc simplement mettre

'lang' => false

au niveau de la définition du champs vidéo pour corriger le problème.

 

Bonne journée.

  • Like 1
Link to comment
Share on other sites

Merci pour votre réponse.

 

J'ai cependant une erreur suite à la modification :

Une erreur s'est produite pendant la mise à jour de l'objet. product ()

 

J'ai juste passé la valeur de lang à false.

 

Du coup, j'ai modifié l'emplacement du champ dans la base.

Il était dans product_lang je l'ai passé dans product.

 

J'ai testé et ça fonctionne parfaitement !

 

Merci beaucoup.

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...