Tutorial - Criando um produto para Plone usando Archetypes
Analisando o módulo __init__.py
__init__.py
#imports essenciais para instalação do produto
from Globals import package_home
from Products.CMFCore import utils as cmfutils
from Products.CMFCore import CMFCorePermissions
from Products.CMFCore import DirectoryView
from Products.Archetypes.atapi import *
from Products.Archetypes import listTypes
from Products.LocadoraVeiculos.config import *
# Registrando skins do produto
DirectoryView.registerDirectory('skins',GLOBALS)
DirectoryView.registerDirectory('skins/LocadoraVeiculos', \
GLOBALS)
#Função que inicializa nossos novos tipos.
def initialize(context):
# imports pacotes e tipos para registro
import content
# process_types gera tipos de conteúdos, contrutores e\# FTIs necessários para que o produto trabalhe com o CMF
content_types, constructors, ftis = process_types(
listTypes(PROJECTNAME),
PROJECTNAME)
# Inicializa e registra os tipos de conteúdos
cmfutils.ContentInit(
PROJECTNAME + ' Content',
content_types = content_types,
permission = ADD_CONTENT_PERMISSION,
extra_constructors = constructors,
fti = ftis,
).initialize(context)