示例#1
0
    def share_contact():
        app.logger.info("data: {}".format(
            request.get_data(),
        ))

        share = ShareContact.from_dict(loads(request.get_data()))

        owner_user = User.query.get_or_404(share.owner_id)
        subject_user_model = User.query.get_or_404(share.subject_id)

        contact_model = Contact(
            owner_id=owner_user.id,
            email=subject_user_model.email,
            name=subject_user_model.name,
            phone=subject_user_model.phone,
            company=subject_user_model.company,
            linkedin_url=subject_user_model.linkedin_url,
            photo=subject_user_model.photo,
        )
        try:
            db.session.add(contact_model)
            db.session.commit()
            contact_resource = contact_model.to_contact_resource()
            return dumps(contact_resource.to_dict()), codes.created
        except Exception as error:
            app.logger.exception(error)
            db.session.rollback()
            raise
示例#2
0
    def contact():
        app.logger.info("content-type: {}, data: {}".format(
            request.headers.get('content-type'),
            request.get_data(),
        ))

        contact_resource = ContactResource.from_dict(loads(request.get_data()))
        # Make sure user exists
        User.query.get_or_404(contact_resource.owner_id)
        contact_model = Contact.from_contact_resource(contact_resource)
        try:
            db.session.add(contact_model)
            db.session.commit()
            contact_resource = contact_model.to_contact_resource()
            return dumps(contact_resource.to_dict()), codes.created
        except Exception as error:
            app.logger.exception(error)
            db.session.rollback()
            raise