IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zope Python Discussion :

[Plone] Instanciation d'objets créés avec archetype


Sujet :

Zope Python

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut [Plone] Instanciation d'objets créés avec archetype
    bonjour!
    J'ai une petite question...Je gallère un peu (peut être parce que je suis blonde, enfin je pense pas ), si vous pouviez m'aider...
    J'arrive à créer un product et même à créer mes propres types avec archetype:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
     
    from Products.GestionCourrier.config import ARTICLE_GROUPS1
    from Products.GestionCourrier.config import ARTICLE_GROUPS2
    from Products.Archetypes.public import *
    from Products.Archetypes.Marshall import PrimaryFieldMarshaller
    from Products.CMFCore import CMFCorePermissions
    from config import PROJECTNAME
     
    schema = BaseSchema +  Schema((
    	StringField('Num_dpt',
    		vocabulary=ARTICLE_GROUPS1,
    		widget=SelectionWidget(label="Numero de departement"),
    		required=1,
    	),
    	StringField('Type',
    		vocabulary=ARTICLE_GROUPS2,
    		widget=SelectionWidget(label="Type"),
    		required=1,
    	),
    	IntegerField('Annee',
    		default='06',
    		widget=IntegerWidget(label="Annee"),
    		required=1,
    	),
    	IntegerField('Chrono',
    		widget=IntegerWidget(label="Chrono"),
    		default_method="incrChrono",
    		accessor="getChrono",
    		required=1,
    	),
    	StringField('Objet',
    		widget=StringWidget(label="Objet"),
    		required=1,
    	),
    	StringField('Destinataire',
    		widget=StringWidget(label="Destinataire"),
    		required=1,
    	),
    	FileField('Fichier',
    		widget=FileWidget(label="Fichier"),
    	),),
          marshall=PrimaryFieldMarshaller(),
    	)
     
    class Courrier(BaseContent):
     
    	schema = schema        
     
    	def getChrono(self):
    		#objFichier = open(context.abspath(os.path.dirname(sys.argv[0]))+"\numero.txt",'r+')
    		objFichier = open(r'C:\Program Files\Plone 2\Data\Products\GestionCourrier\numero.txt','r+')
    		auxi = objFichier.read()
    		objFichier.close() 
    		Chrono=int(auxi)
    		return Chrono		
     
     
    	def incrChrono(self):
    		objFichier = open(r'C:\Program Files\Plone 2\Data\Products\GestionCourrier\numero.txt','r+')
    		#objFichier = open(os.path.abspath(os.path.dirname(sys.argv[0]))+"\numero.txt",'r+')
    		tmp = objFichier.read()
    		objFichier.seek(0)
    		objFichier.write(str(int(tmp)+1))
    		objFichier.close()
     
    	actions = ({
    		'id': 'view',
    		'name': 'View',
    		'action': 'string:${object_url}/courrier_view',
    		'permissions': (CMFCorePermissions.View,)
    	},)
     
    registerType(Courrier, PROJECTNAME)
     
    schema2 = BaseBTreeFolderSchema
     
    class DossierCourrier(BaseBTreeFolder):
    	"""Un simple dossier"""
     
    	schema = schema2
     
    	allowed_content_types = ('Courrier',)
    	Initial_view_name = 'folder_listing' 
    	Default_view_method = 'folder_tabular_view'
     
    	actions = ({
            'id': 'view',
            'name': 'View',
            'action': 'string:${object_url}/folder_tabular_view',
            'permissions': (CMFCorePermissions.View,)
            },)
    registerType(DossierCourrier, PROJECTNAME)
    Je sais faire un script python qui me crée automatiquement un dossier...

    Mais je n'arrive pas à creer automatiquement un objet des types que j'ai créés!
    En fait j'aimerais créer, à l'installation de mon product, un dossier de type "DossierCourrier"...
    Quelqu'un aurait une idée de comment faire?
    Merci beaucoup!
    bizzz+++

  2. #2
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut ok
    peut être que ma question est mal posée ou que c'est une question bête...dites le moi quand même dans ce cas la...
    bizzz+++

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut galère toujours...
    Bon apparement il y a un truc que j'arrive pas à comprendre...
    Je ne sais toujours pas faire alors que:
    1) j'arrive à creer les types avec le product
    2)j'arrive à faire une instance des sites créés avec un script à partir de la ZMI...
    Moi pas comprendre...
    merci de regarder mon post
    bizzz+++

  4. #4
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut solution
    http://www.zopera.org/Members/beatri...006-10-11.1542
    merci à encolpe mon sauveur...
    bizzz+++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/03/2012, 15h41
  2. Problème d'i18n des objets créés avec ActionScript
    Par masterboy01 dans le forum Flex
    Réponses: 5
    Dernier message: 15/12/2010, 09h54
  3. instancier 2 objets avec 1 seul paramétre
    Par Micke7 dans le forum Langage
    Réponses: 6
    Dernier message: 26/03/2009, 15h54
  4. Réponses: 5
    Dernier message: 06/03/2007, 15h03
  5. [POO] Instancier un objet avec le nom de la classe
    Par shinchun dans le forum Langage
    Réponses: 4
    Dernier message: 08/06/2006, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo