Effectivement �a venait bien de �a ;) ! (un mauvais r�flexe JAVA)

- from Products.CPSRSS.RSSChannel import RSSChannel

au lieu de :

- from Products.CPSRSS import RSSChannel

Un grand merci pour votre aide...


-----Message d'origine-----
De : Tarek Ziad� [mailto:[EMAIL PROTECTED]
Envoy� : jeudi 14 avril 2005 11:53
� : TERRIEN Mickael
Cc : [email protected]
Objet : Re: TR: [CPS-users-fr] Customiser un produit


juste une id�e :

from Products.CPSRSS import RSSChannel

c'est pas plutot :

from Products.CPSRSS.RSSChannel import RSSChannel  ?
 


TERRIEN Mickael wrote:

>Oui je fais l'import de mon patch dans le fichier __init__.py de mon produit 
>afin que ma classe soit compil�e.
>
>Mon arborescence :
>Products/
>         - CPSRSS/
>                       - RSSChannel.py
>         - MonProduit/
>                       - PatchRSSChannel.py
>                     - __init__.py -> import PatchRSSChannel
>                        
>
>
>-----Message d'origine-----
>De : Tarek Ziad� [mailto:[EMAIL PROTECTED]
>Envoy� : jeudi 14 avril 2005 11:30
>� : TERRIEN Mickael
>Cc : [email protected]
>Objet : Re: TR: [CPS-users-fr] Customiser un produit
>
>
>TERRIEN Mickael wrote:
>
>  
>
>>C'est justement ce que je viens d'essayer de faire :
>>
>>--------------- patchRSSChannel.py ----------------------------
>>    
>>
>>from Products.CPSRSS import RSSChannel
>  
>
>>def _retrieveRSSFeed(self):
>>      #code modifi�
>>      ...
>>
>>RSSChannel._retrieveRSSFeed = _retrieveRSSFeed
>>---------------------------------------------------------------
>>
>>Mais cela ne fonctionne pas. Est-ce bien �a la syntaxe ?
>>
>>J'ai l'impression que mon patch n'est pas pris en compte vu que c'est une 
>>m�thode "priv�e" que je mets � jour.
>> 
>>
>>    
>>
>Avez vous ajout� votre fichier dans la chaine d'initialisation de zope,
>cad en import dans l'__init__.py par exemple ?
>
>  
>
>>
>>
>>
>>-----Message d'origine-----
>>De : Tarek Ziad� [mailto:[EMAIL PROTECTED]
>>Envoy� : jeudi 14 avril 2005 11:09
>>� : TERRIEN Mickael
>>Cc : [email protected]
>>Objet : Re: TR: [CPS-users-fr] Customiser un produit
>>
>>
>>[note : je me permet de Cc sur la mailing pour archivage]
>>
>>Bonjour,
>>
>>
>>TERRIEN Mickael wrote:
>>
>> 
>>
>>    
>>
>>>Bonjour,
>>>
>>>Merci pour votre r�ponse.
>>>
>>>En fait, je veux centraliser toutes mes customisations (je pr�cise "non 
>>>commun � plusieurs utilisateurs" sinon je vous les aurais soumis) dans mon 
>>>produit. 
>>>Mon but est de faire un "produit" et tant pis si il y a ensuite des 
>>>probl�mes avec les mises � jour. Je veux juste que quand je r�installe CPS 
>>>mes fichiers ne soient pas �cras�s donc je veux qu'ils soient dans mon 
>>>produit.
>>>
>>>J'essaie pour cela d'appliquer un patch dynamique � la classe 
>>>"CPSRSS/RSSChannel.py".
>>>
>>>C'est juste un d�tail que j'ai modifi� dans la m�thode "_retrieveRSSFeed" 
>>>qui m'impose de surcharger cette m�thode.
>>>
>>>Comment faire ?
>>>
>>>J'ai essay� :
>>>
>>>--------------- patchRSSChannel.py ----------------------------
>>>#D�but
>>>   
>>>
>>>      
>>>
>>>from Products.CPSRSS import RSSChannel
>> 
>>
>>    
>>
>>>#Suite
>>>//Tout le code de RSSChannel.py avec ma modification dans la m�thode 
>>>"_retrieveRSSFeed"
>>>
>>>#Patch dynamique appliqu� � RSSChannel.py
>>>RSSChannel = RSSChannel
>>>
>>>#Fin
>>>---------------------------------------------------------------
>>>
>>>Mais c'est toujours l'ancienne m�thode qui est prise en compte !
>>>
>>>Merci d'avance.
>>>
>>>
>>>   
>>>
>>>      
>>>
>>A ok en fait le principe du patch est le suivant :
>>
>>fichier Foo.py :
>>class Foo:
>>   def bar(self):
>>       print 'fonctionnement original'
>>
>>
>>
>>le patch fichier FooPatch.py :
>>(contient juste le delta)
>>
>>    
>>
>>from Foo import Foo
>  
>
>>def bar(self):
>>   print 'je pr�f�re ainsi'
>>
>>Foo.bar = bar
>># a partir de ce point la classe Foo est patch�e
>>
>>
>>
>>
>>  
>>
>> 
>>
>>    
>>
>>>-----Message d'origine-----
>>>De : Tarek Ziad� [mailto:[EMAIL PROTECTED]
>>>Envoy� : mercredi 13 avril 2005 13:11
>>>� : TERRIEN Mickael
>>>Cc : [email protected]
>>>Objet : Re: TR: [CPS-users-fr] Customiser un produit
>>>
>>>
>>>TERRIEN Mickael wrote:
>>>
>>>
>>>
>>>   
>>>
>>>      
>>>
>>>>Dans mon cas, ce sont des classes de ces produits que je modifie.
>>>>
>>>>Par exemple, RSSChannel.py pour le produit "CPSRSS" 
>>>>ou encore TypeMakerTool.py pour le produit "CPSTypeMaker" 
>>>>
>>>>Que me conseillez-vous de faire ?
>>>>
>>>>J'ai l'impression que c'est de cr�er mon propre produit...
>>>>
>>>>
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>Ca tiens plus de l'�volution d'un produit que de la cr�ation d'un 
>>>nouveau produit, car vous etes surement
>>>en train de customiser des parties de cps qui n'ont pas �t� pr�vues 
>>>pour l'instant pour etre customis�s comme les schemas, layouts etc..
>>>
>>>Le probl�me surviendra lorsque vous mettrez � jour les produits 
>>>concern�s avec des nouvelles version de CPS.
>>>
>>>Pouvez vous nous d�crire bri�vement les modifications que vous apportez ?
>>>
>>>Si ce sont des besoins de customisation communs � plusieurs 
>>>utilisateurs, il s'agira alors peut etre de sortir des nouveaux points 
>>>de customisation du produit concern� pour que vous puissiez adapter le 
>>>fonctionnement de mani�re p�renne.
>>>
>>>Tarek
>>>
>>>
>>>
>>>   
>>>
>>>      
>>>
>>>>-----Message d'origine-----
>>>>De : Anahide Tchertchian [mailto:[EMAIL PROTECTED]
>>>>Envoy� : mercredi 13 avril 2005 12:19
>>>>� : TERRIEN Mickael
>>>>Cc : [email protected]
>>>>Objet : Re: [CPS-users-fr] Customiser un produit
>>>>
>>>>
>>>>TERRIEN Mickael wrote:
>>>>
>>>>
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>>>Bonjour,
>>>>> 
>>>>>
>>>>>    
>>>>>
>>>>>       
>>>>>
>>>>>          
>>>>>
>>>>Bonjour,
>>>>
>>>>
>>>>
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>>>je voudrais conna�tre la m�thode conseill�e pour customiser un produit ?
>>>>> 
>>>>>
>>>>>    
>>>>>
>>>>>       
>>>>>
>>>>>          
>>>>>
>>>>La m�thode conseill�e est, en effet, de cr�er son propre produit, dont 
>>>>l'installeur appelle l'installeur par d�faut de CPS, puis met en place 
>>>>les comportements personnalis�s.
>>>>
>>>>
>>>>
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>>>Actuellement, je modifie directement les sources du produit pour qu'il 
>>>>>prenne en compte les cas sp�cifiques et g�n�riques.
>>>>>Mais je voudrais centraliser ces modifications dans mon produit personnel.
>>>>>
>>>>>Quelle est la bonne m�thode ? :
>>>>>- copier dans mon produit les classes en jeu
>>>>>- installer le produit customis� (modifier le fichier install, ...) 
>>>>>dans mon produit
>>>>>- syst�me de patch
>>>>>
>>>>>Est-ce-qu'une m�thode est ind�pendante des �ventuels mises � jour des 
>>>>>produits concern�s ?
>>>>> 
>>>>>
>>>>>    
>>>>>
>>>>>       
>>>>>
>>>>>          
>>>>>
>>>>Je ne suis pas sure de comprendre cette question, mais peut-etre que 
>>>>l'explication precedente y repond : c'est l'appel du script d'update de 
>>>>CPS avant l'installation des specificites qui assure la mise a jour 
>>>>correcte du site.
>>>>
>>>>Pour ce qui est des methodes plus "concretes", tout depend des 
>>>>modifications.
>>>>S'il s'agit de modifier un schema/layout par exemple, il est possible de 
>>>>les redefinir dans votre produit, et cette configuration ecrasera la 
>>>>configuration par defaut.
>>>>
>>>>Certaines fois,la personnalisation est l�g�rement plus compliqu�e 
>>>>(modifications des methodes d'un widget par exemple).
>>>>
>>>>D'autres fois encore, il est plus simple de monkey-patcher, voire 
>>>>patcher, mais en g�n�ral il vaut mieux l'�viter.
>>>>
>>>>N'h�sitez pas � poser des questions concernant des personnalisations que 
>>>>vous ne sauriez pas mettre en place.
>>>>
>>>>Cordialement,
>>>>
>>>>
>>>>
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>
>>>   
>>>
>>>      
>>>
>> 
>>
>>    
>>
>
>
>  
>


-- 
Tarek ZIADE, Nuxeo SARL: Zope Service Provider.
Mail: [EMAIL PROTECTED] - Tel: +33 (0)6 30 37 02 63
Nuxeo Collaborative Portal Server: http://www.nuxeo.com/cps
Gestion de contenu web / portail collaboratif / groupware / open source



_______________________________________________
cps-users-fr
Adresse de la liste : [email protected]
Gestion de l'abonnement : <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr>

Répondre à