• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python sqlalchemy.getSAWrapper函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中z3c.sqlalchemy.getSAWrapper函数的典型用法代码示例。如果您正苦于以下问题:Python getSAWrapper函数的具体用法?Python getSAWrapper怎么用?Python getSAWrapper使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了getSAWrapper函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: insertDossier

    def insertDossier(self, elevePk, eleveNom, eleveClasse):
        """
        insère un nouveau dossier disciplinaire
        """
        ismTools = getMultiAdapter((self.context, self.request), name="manageISM")
        dossierDisciplianireID = self.getDossierId(elevePk, eleveNom, eleveClasse)
        dossierDisciplianireAnneeScolaire = ismTools.getAnneeCourante()
        dossierDisciplianireElevePk = elevePk
        auteurPk = self.getAuteurPk()

        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        newEntry = DossierDisciplinaire(dosdis_id=dossierDisciplianireID,
                                        dosdis_annee_scolaire=dossierDisciplianireAnneeScolaire,
                                        dosdis_actif=True,
                                        dosdis_eleve_fk=dossierDisciplianireElevePk,
                                        dosdis_auteur_fk=auteurPk)
        session.add(newEntry)
        session.flush()
        session.refresh(newEntry)
        dossierDisciplinairePk = newEntry.dosdis_pk

        self.insertLogOperation('insertDossier', auteurPk, dossierDisciplinairePk)

        self.sendMailForNewDossier(elevePk)

        return ''
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:27,代码来源:manage_dossier_disciplinaire.py


示例2: updateDemandeIntervention

    def updateDemandeIntervention(self):
        """
        table pg demande d'intervention
        mise a jour d'une demande d'intervention
        """
        commonTools = getMultiAdapter((self.context, self.request), name="manageCommon")
        employeModification = commonTools.getUserAuthenticated()

        fields = self.request.form
        interventionPk = fields.get('interventionPk', None)
        etatInterventionByIpplf = fields.get('etatInterventionByIpplf', None)
        commentaireByIpplf = fields.get('commentaireByIpplf', None)

        wrapper = getSAWrapper('ipplf')
        session = wrapper.session
        updateIntervention = wrapper.getMapper('demande_intervention')
        query = session.query(updateIntervention)
        query = query.filter(updateIntervention.di_pk == interventionPk)
        demandeIntervention = query.one()
        demandeIntervention.di_etat_ipplf = unicode(etatInterventionByIpplf, 'utf-8')
        demandeIntervention.di_commentaire_ipplf = unicode(commentaireByIpplf, 'utf-8')
        demandeIntervention.di_employe_modification = unicode(employeModification, 'utf-8')

        session.flush()

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"L'intervention a bien été modifiée !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/detail-demande-d-intervention?diPk=%s" % (portalUrl, interventionPk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:ipplf.core,代码行数:32,代码来源:ManageDemandeIntervention.py


示例3: updateProprioMaj

 def updateProprioMaj(self):
     """
     mise à jour des données maj du proprio
     """
     fields = self.request
     proMajProPk = fields.get('pro_maj_propk')
     wrapper = getSAWrapper('gites_wallons')
     session = wrapper.session
     updateProprioMaj = wrapper.getMapper('proprio_maj')
     query = session.query(updateProprioMaj)
     query = query.filter(updateProprioMaj.pro_maj_propk == proMajProPk)
     record = query.one()
     record.pro_maj_civ_fk = fields.get('pro_maj_civ_fk')
     record.pro_maj_nom1 = fields.get('pro_maj_nom1', '')
     record.pro_maj_prenom1 = fields.get('pro_maj_prenom1', '')
     record.pro_maj_nom2 = fields.get('pro_maj_nom2', '')
     record.pro_maj_prenom2 = fields.get('pro_maj_prenom2', '')
     record.pro_maj_societe = fields.get('pro_maj_societe', '')
     record.pro_maj_adresse = fields.get('pro_maj_adresse', '')
     record.pro_maj_com_fk = fields.get('pro_maj_com_fk')
     record.pro_maj_email = fields.get('pro_maj_email')
     record.pro_maj_tel_priv = fields.get('pro_maj_tel_priv')
     record.pro_maj_fax_priv = fields.get('pro_maj_fax_priv')
     record.pro_maj_gsm1 = fields.get('pro_maj_gsm1')
     record.pro_maj_tva = fields.get('pro_maj_tva')
     record.pro_maj_langue = fields.get('pro_maj_langue')
     record.pro_maj_date_naiss = fields.get('pro_maj_date_naiss') or None
     session.flush()
开发者ID:gitesdewallonie,项目名称:gites.proprio,代码行数:28,代码来源:proprio.py


示例4: deleteAfficheFromLocalFS

    def deleteAfficheFromLocalFS(self, \
                                 fileName, \
                                 for_id=None):
        """
        suppression du fichier dans le localfs
        comme  catalogue pdf de l'operateur
        suppression dans la table link_organisme_formation
        """
        #suppression dans le localfs
        rof = getattr(self.context, 'rof-questionnaire')
        lfs = getattr(rof, 'rof_pdf')
        lfs.manage_delObjects(ids=fileName)

        #suppression dans la table link_organisme_catalogue
        wrapper = getSAWrapper('apef')
        session = wrapper.session
        deleteCatalogue = wrapper.getMapper('link_organisme_catalogue')
        query = session.query(deleteCatalogue)
        query = query.filter(deleteCatalogue.c.for_catalogue == fileName)
        newEntries = query.all()
        for newEntry in newEntries:
            session.delete(newEntry)
        session.flush()

        if for_id:
            cible = "%s/rof-questionnaire/operateur-gerer-catalogue-pdf" % self.context.portal_url()
        else:
            cible = "%s/rof-questionnaire/accueil" % self.context.portal_url()
        self.context.REQUEST.RESPONSE.redirect(cible)
        return ''
开发者ID:affinitic,项目名称:cenforsoc.skin,代码行数:30,代码来源:ManageAffiche.py


示例5: deleteProfesseur

    def deleteProfesseur(self):
        """
        Supprimer un professeur
        """
        fields = self.context.REQUEST

        profPk = getattr(fields, 'profPk', None)
        profLogin = getattr(fields, 'profLogin', None)

        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        query = session.query(Professeur)
        query = query.filter(Professeur.prof_pk == profPk)
        professeur = query.one()
        session.delete(professeur)
        session.flush()

        self.delLoginProfesseur(profLogin)

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"Le professeur a bien été supprimé !"
        ploneUtils.addPortalMessage(message, 'info')

        url = "%s/institut-sainte-therese/ajouter-un-professeur-ist?profPk=%s" % (portalUrl, profPk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cesstex_ist.skin,代码行数:27,代码来源:manage_professeur.py


示例6: getAuteurPkByAuteurNom

    def getAuteurPkByAuteurNom(self, livrePk, auteurNom=None):
        """
        table pg auteur
        recuperation de la pk d'un auteur selon leur nom
        à partir de la table livre
        """
        if not auteurNom:
            return''
        else:
            nom = auteurNom.split(', ')
            auteurNom = nom[0]
            print auteurNom
            if len(nom) > 1:
                auteurPrenom = nom[1]
            else:
                auteurPrenom = None
            wrapper = getSAWrapper('cenforsoc')
            session = wrapper.session
            AuteurTable = wrapper.getMapper('auteur')
            query = session.query(AuteurTable)

            if auteurNom:
                query = query.filter(AuteurTable.auteur_nom == auteurNom)
                if auteurPrenom:
                    query = query.filter(AuteurTable.auteur_prenom == auteurPrenom)
                auteur = query.one()
                auteurPk = auteur.auteur_pk
                return (livrePk, auteurPk)
开发者ID:affinitic,项目名称:cenforsoc.skin,代码行数:28,代码来源:ManageAuteur.py


示例7: getCapaciteTotalGroupementByPk

 def getCapaciteTotalGroupementByPk(self, hebPk):
     wrapper = getSAWrapper('gites_wallons')
     session = wrapper.session
     query = session.query(Hebergement.heb_nom.label('heb_nom'),
                           Hebergement.heb_cgt_nbre_chmbre.label('heb_cgt_nbre_chmbre'),
                           Hebergement.heb_cgt_cap_min.label('heb_cgt_cap_min'),
                           Hebergement.heb_cgt_cap_max.label('heb_cgt_cap_max'),
                           TypeHebergement.type_heb_id.label('heb_type'),
                           TypeHebergement.type_heb_type.label('heb_type_type'),
                           TypeHebergement.type_heb_code.label('heb_type_code'),
                           Hebergement.heb_code_gdw.label('heb_code_gdw'),
                           Hebergement.heb_pk.label('heb_pk'),
                           LinkHebergementEpis.heb_nombre_epis.label('heb_nombre_epis'),
                           Hebergement.heb_localite.label('heb_localite'),
                           Hebergement.heb_gps_long.label('heb_gps_long'),
                           Hebergement.heb_gps_lat.label('heb_gps_lat'),
                           Hebergement.heb_groupement_pk.label('heb_groupement_pk'),
                           HebergementApp.heb_app_groupement_line_length.label('heb_app_groupement_line_length'),
                           HebergementApp.heb_app_groupement_angle_start.label('heb_app_groupement_angle_start')
                           )
     query = query.join('proprio').outerjoin('epis').join('type').join('app')
     query = query.options(FromCache('gdw'))
     query = query.filter(Hebergement.heb_groupement_pk == hebPk)
     query = query.filter(sa.and_(Hebergement.heb_site_public == '1',
                                  Proprio.pro_etat == True))
     groupement = query.all()
     nbreChambre = 0
     nbrePersonneMin = 0
     nbrePersonneMax = 0
     for heb in groupement:
         nbreChambre = nbreChambre + heb.heb_cgt_nbre_chmbre
         nbrePersonneMin = nbrePersonneMin + heb.heb_cgt_cap_min
         nbrePersonneMax = nbrePersonneMax + heb.heb_cgt_cap_max
     return (nbreChambre, nbrePersonneMin, nbrePersonneMax)
开发者ID:gitesdewallonie,项目名称:gites.core,代码行数:34,代码来源:hebergement.py


示例8: insertClasse

    def insertClasse(self):
        """
        insère un nouvel classe
        """
        fields = self.context.REQUEST

        classeNom = getattr(fields, 'classeNom')
        classeTitulaire01Pk = fields.get('classeTitulaire01Pk', None)
        classeTitulaire02Pk = fields.get('classeTitulaire02Pk', None)

        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        newEntry = ClasseIsm(classeism_nom=classeNom,
                             classeism_titulaire_01_fk=classeTitulaire01Pk,
                             classeism_titulaire_02_fk=classeTitulaire02Pk)
        session.add(newEntry)
        session.flush()
        session.refresh(newEntry)

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"La nouvelle classe a bien été ajoutée !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/institut-sainte-marie/ajouter-une-classe-ism" % (portalUrl)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:26,代码来源:manage_classe.py


示例9: updateClasse

    def updateClasse(self):
        """
        Updates un événement acté lié à un dossier
        """

        fields = self.context.REQUEST

        classePk = getattr(fields, 'classePk')
        classeNom = getattr(fields, 'classeNom')
        classeTitulaire01Pk = fields.get('classeTitulaire01Pk', None)
        classeTitulaire02Pk = fields.get('classeTitulaire02Pk', None)

        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        query = session.query(ClasseIsm)
        query = query.filter(ClasseIsm.classeism_pk == classePk)
        classe = query.one()
        classe.classeism_nom = unicode(classeNom, 'utf-8')
        classe.classeism_titulaire_01_fk = classeTitulaire01Pk
        classe.classeism_titulaire_02_fk = classeTitulaire02Pk
        session.flush()

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"La classe a bien été modifiée !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/institut-sainte-marie/ajouter-une-classe-ism?classePk=%s" % (portalUrl, classePk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:29,代码来源:manage_classe.py


示例10: deleteEvenementActeDocumentByDocumentPk

    def deleteEvenementActeDocumentByDocumentPk(self):
        """
        suppression d'un fichier attache a un evenement acte dans la db
        """
        fields = self.context.REQUEST
        fichierNom = getattr(fields, 'fichierNom', None)
        evenementActePk = getattr(fields, 'evenementActePk', None)
        documentPk = getattr(fields, 'documentPk', None)
        elevePk = getattr(fields, 'elevePk', None)
        dossierDisciplinaire = self.getDossierByEleve(elevePk)
        dossierDisciplinairePk = dossierDisciplinaire.dosdis_pk
        auteurPk = self.getAuteurPk()

        #suppression dans la table evenement_acte_document
        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        query = session.query(EvenementActeDocument)
        query = query.filter(EvenementActeDocument.eventactdoc_pk == documentPk)
        document = query.one()
        session.delete(document)
        session.flush()

        self.insertLogOperation('deleteEvenementActeDocumentFromDb', auteurPk, dossierDisciplinairePk, evenementActePk)
        self.deleteEvenementActeDocumentFromLfs(fichierNom, auteurPk, dossierDisciplinairePk, evenementActePk)

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"Le pdf a bien été suprimé !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/institut-sainte-marie/la-salle-des-profs/gestion-des-dossiers-disciplinaires/ajouter-un-evenement-au-dossier?elevePk=%s" % (portalUrl, elevePk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:32,代码来源:manage_dossier_disciplinaire.py


示例11: getHebergementByNameOrPk

 def getHebergementByNameOrPk(self, reference):
     """
     Get the url of the hebergement by Pk or part of the name
     """
     wrapper = getSAWrapper('gites_wallons')
     session = wrapper.session
     hebTable = wrapper.getMapper('hebergement')
     try:
         int(reference)
     except ValueError:
         pass
     else:
         # we have a heb pk to search for
         hebergement = session.query(hebTable).get(reference)
         if hebergement and int(hebergement.heb_site_public) == 1 and hebergement.proprio.pro_etat:
            # L'hébergement doit être actif, ainsi que son propriétaire
             hebURL = getMultiAdapter((hebergement.__of__(self.context.hebergement), self.request), name="url")
             self.request.response.redirect(str(hebURL))
             return ''
         else:
             portal = getToolByName(self.context, 'portal_url').getPortalObject()
             return getMultiAdapter((portal, self.request),
                                    name="unknown_gites")()
     zope.interface.alsoProvides(self.request, IMapRequest)
     return self.search_results()
开发者ID:gitesdewallonie,项目名称:gites.core,代码行数:25,代码来源:moteur_recherche.py


示例12: addEvenementActeDocument

    def addEvenementActeDocument(self, evenementActePk, dossierDisciplinairePk):
        """
        ajout d'un fichier dans le localfs 'localfs_ism_event_act'
        comme document lié à une eventment acte
        """
        ismTools = getMultiAdapter((self.context, self.request), name="manageISM")
        dateCreation = ismTools.getTimeStamp()
        auteurPk = self.getAuteurPk()

        fields = self.context.REQUEST
        evenementActeDocument = getattr(fields, 'fichierAttache')
        dossierDisciplinairePk = getattr(fields, 'dossierDisciplinairePk')

        lfsEventActe = getattr(self.context, 'localfs_ism_event_act')
        lfs = getattr(lfsEventActe, 'localfs_ism_event_act')
        filename, ext = os.path.splitext(evenementActeDocument.filename)
        normalizedFilename = normalizeString(filename, encoding='utf-8')
        nomFichier = '%s_dd%s_ev%s%s' % (normalizedFilename, dossierDisciplinairePk, evenementActePk, ext)
        lfs.manage_upload(evenementActeDocument, id=nomFichier)

        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        newEntry = EvenementActeDocument(eventactdoc_date_creation=dateCreation,
                                         eventactdoc_auteur_creation=auteurPk,
                                         eventactdoc_nom_fichier=nomFichier,
                                         eventactdoc_auteur_creation_fk=auteurPk,
                                         eventactdoc_eventact_fk=evenementActePk,
                                         eventactdoc_dossier_disciplinaire_fk=dossierDisciplinairePk)
        session.add(newEntry)
        session.flush()
        self.insertLogOperation('addEvenementActeDocument', auteurPk, dossierDisciplinairePk, evenementActePk)
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:31,代码来源:manage_dossier_disciplinaire.py


示例13: deleteEvenementActe

    def deleteEvenementActe(self):
        """
        Supprimer un événement acté lié à un dossier
        """
        fields = self.request.form

        elevePk = fields.get('elevePk')
        evenementActePk = fields.get('evenementActePk', None)
        dossierDisciplinairePk = fields.get('dossierDisciplinairePk', None)
        auteurPk = self.getAuteurPk()

        self.deleteLogModificationEvenementActe()
        self.deleteAllEvenementActeDocumentByEvenementPk()

        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        query = session.query(EvenementActe)
        query = query.filter(EvenementActe.eventact_pk == evenementActePk)
        evenementActe = query.one()
        session.delete(evenementActe)
        session.flush()

        self.insertLogOperation('deleteEvenementActe', auteurPk, dossierDisciplinairePk, evenementActePk)

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"L'événement a bien été supprimé !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/institut-sainte-marie/la-salle-des-profs/gestion-des-dossiers-disciplinaires/ajouter-un-evenement-au-dossier?elevePk=%s" % (portalUrl, elevePk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:31,代码来源:manage_dossier_disciplinaire.py


示例14: deleteDossierDisciplinaire

    def deleteDossierDisciplinaire(self):
        """
        Supprimer un dossier disciplinaire et ses event actés
        """
        fields = self.request.form

        dossierDisciplinairePk = fields.get('dossierDisciplinairePk')
        elevePk = fields.get('elevePk')
        #evenementActePk = fields.get('evenementActePk', None)
        auteurPk = self.getAuteurPk()

        self.deleteEvenementActeByDossierDisciplinaire(dossierDisciplinairePk)
        wrapper = getSAWrapper('cesstex')
        session = wrapper.session
        query = session.query(DossierDisciplinaire)
        query = query.filter(DossierDisciplinaire.dosdis_pk == dossierDisciplinairePk)
        dossierDisciplinaire = query.one()
        session.delete(dossierDisciplinaire)
        session.flush()
        self.deleteEleveDosDis(elevePk)

        self.insertLogOperation('deleteDossierDisciplinaire', auteurPk, dossierDisciplinairePk)

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"Le dossier disciplinaire et les événements qui lui sont liés ont bien été supprimés !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/institut-sainte-marie/la-salle-des-profs/gestion-des-dossiers-disciplinaires/ajouter-un-dossier-disciplinaire" % (portalUrl)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cesstex.skin,代码行数:30,代码来源:manage_dossier_disciplinaire.py


示例15: insertAuteur

    def insertAuteur(self):
        """
        table pg auteur
        ajout d'un item Auteur
        """
        fields = self.request.form

        auteurNom = fields.get('auteurNom', None)
        auteurPrenom = fields.get('auteurPrenom', None)

        auteurNom = unicode(auteurNom, 'utf-8')
        auteurPrenom = unicode(auteurPrenom, 'utf-8')

        wrapper = getSAWrapper('cenforsoc')
        session = wrapper.session
        insertAuteur = wrapper.getMapper('auteur')
        newEntry = insertAuteur(auteur_nom=auteurNom,
                                auteur_prenom=auteurPrenom)
        session.add(newEntry)
        session.flush()
        session.refresh(newEntry)
        auteurPk = newEntry.auteur_pk

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"Le nouvel auteur %s %s a bien été enregistré !" % (auteurNom, auteurPrenom)
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/gestion-de-la-base/les-auteurs/admin-decrire-un-auteur?auteurPk=%s" % (portalUrl, auteurPk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cenforsoc.skin,代码行数:30,代码来源:ManageAuteur.py


示例16: getSearchIndex

 def getSearchIndex(self, tableName):
     """
     Returns the available search index in the table
     """
     wrapper = getSAWrapper('gites_wallons')
     table = wrapper.getMapper(tableName)
     return ITableSearch(table()).searchableFields
开发者ID:gitesdewallonie,项目名称:gites.core,代码行数:7,代码来源:dbreferencewidgetview.py


示例17: updateAuteur

    def updateAuteur(self):
        """
        table pg auteur
        mise a jour d'un item auteur
        """
        fields = self.request.form

        auteurPk = fields.get('auteurPk', None)
        auteurNom = fields.get('auteurNom', None)
        auteurPrenom = fields.get('auteurPrenom', None)

        wrapper = getSAWrapper('cenforsoc')
        session = wrapper.session
        updateAuteurTable = wrapper.getMapper('auteur')
        query = session.query(updateAuteurTable)
        query = query.filter(updateAuteurTable.auteur_pk == auteurPk)
        auteurs = query.all()
        for auteur in auteurs:
            auteur.auteur_nom = unicode(auteurNom, 'utf-8')
            auteur.auteur_prenom = unicode(auteurPrenom, 'utf-8')

        session.flush()

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"L'auteur %s %s a bien été modifié !" % (auteurNom, auteurPrenom)
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/gestion-de-la-base/les-auteurs/admin-decrire-un-auteur?auteurPk=%s" % (portalUrl, auteurPk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cenforsoc.skin,代码行数:30,代码来源:ManageAuteur.py


示例18: getInfosTouristiques

    def getInfosTouristiques(self, infoType, infoTypePk, location=None):
        wrapper = getSAWrapper('gites_wallons')
        InfoTouristique = wrapper.getMapper('info_touristique')
        TypeInfoTouristique = wrapper.getMapper('type_info_touristique')
        query = select([InfoTouristique.infotour_nom,
                        InfoTouristique.infotour_url,
                        InfoTouristique.infotour_gps_long,
                        InfoTouristique.infotour_gps_lat,
                        TypeInfoTouristique.typinfotour_nom_fr,
                        InfoTouristique.infotour_localite],
                       InfoTouristique.infotour_type_infotour_fk == infoTypePk)
        if location:
            query.append_whereclause(InfoTouristique.infotour_location.distance_sphere(location) < DISTANCE_METERS)

        query.append_whereclause(TypeInfoTouristique.typinfotour_pk == InfoTouristique.infotour_type_infotour_fk)
        infos = query.execute().fetchall()
        results = []
        for info in infos:
            title = '<a href="http://%s" title="%s" target="_blank">%s</a>' % (info.infotour_url,
                                                                               info.infotour_nom,
                                                                               info.infotour_nom)
            results.append({'types': [infoType],
                            'name': title,
                            'vicinity': info.infotour_localite,
                            'latitude': info.infotour_gps_lat,
                            'longitude': info.infotour_gps_long})
        return results
开发者ID:gitesdewallonie,项目名称:gites.map,代码行数:27,代码来源:utils.py


示例19: getLivresByAuteurNom

    def getLivresByAuteurNom(self, auteurNom=None):
        """
        recuperation de tous les livres d'un auteur via son Nom
        """
        auteurPk = []
        if not auteurNom:
            fields = self.request.form
            auteurNom = fields.get('auteurNom', None)
        else:
            b = auteurNom.split('- ')
            auteurPk.append(int(b[1]))

        wrapper = getSAWrapper('cenforsoc')
        session = wrapper.session
        LinkLivreAuteurTable = wrapper.getMapper('link_livre_auteur')
        query = session.query(LinkLivreAuteurTable)

        for pk in auteurPk:
            query = query.filter(LinkLivreAuteurTable.auteur_fk == pk)

        allLivresPk = query.all()

        allLivres = []
        for livre in allLivresPk:
            livrePk = livre.livres.liv_pk
            livreTitre = livre.livres.liv_titre
            allLivres.append((livrePk, livreTitre))

        return allLivres
开发者ID:affinitic,项目名称:cenforsoc.skin,代码行数:29,代码来源:ManageLivre.py


示例20: insertPeriodique

    def insertPeriodique(self):
        """
        ajout d'un item periodique
        """
        fields = self.context.REQUEST
        periodiqueTitre = getattr(fields, 'periodiqueTitre')
        periodiqueDescription = getattr(fields, 'periodiqueDescription', None)

        wrapper = getSAWrapper('cenforsoc')
        session = wrapper.session
        insertPeriodique = wrapper.getMapper('periodique')
        newEntry = insertPeriodique(per_titre=periodiqueTitre,
                                    per_description=periodiqueDescription)
        session.add(newEntry)
        session.flush()

        session.refresh(newEntry)
        periodiquePk = newEntry.per_pk

        portalUrl = getToolByName(self.context, 'portal_url')()
        ploneUtils = getToolByName(self.context, 'plone_utils')
        message = u"Vos informations ont été enregistrées !"
        ploneUtils.addPortalMessage(message, 'info')
        url = "%s/gestion-de-la-base/les-periodiques/admin-decrire-un-periodique?periodiquePk=%s" % (portalUrl, periodiquePk)
        self.request.response.redirect(url)
        return ''
开发者ID:affinitic,项目名称:cenforsoc.skin,代码行数:26,代码来源:ManagePeriodique.py



注:本文中的z3c.sqlalchemy.getSAWrapper函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python baseop.BaseOp类代码示例发布时间:2022-05-26
下一篇:
Python saconfig.Session类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap