es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo conectar la base de datos de Salesforce en Django? ¿Cómo realizar llamadas a la API utilizando Python?

Cómo conectar la base de datos de Salesforce en django? ¿Realizar llamadas API usando Python?

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': 'salesforce_db',
    },
    'salesforce': {
        'ENGINE': 'salesforce.backend',
        "CONSUMER_KEY": 'EDIT: la clave que obtienes.......................',
        "CONSUMER_SECRET": 'EDIT secreto que obtienes',
        'USER': 'EDIT tu@usuario.nombredeinicio.de.sesión',
        'PASSWORD': 'EDIT contraseña + token_de_seguridad',
        'HOST': 'https://login.salesforce.com',
    }
}

SALESFORCE_QUERY_TIMEOUT= (4, 15)
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para conectar una base de datos de Salesforce en Django, podemos utilizar el motor backend de Salesforce. En el archivo settings.py, podemos especificar las configuraciones para la base de datos de Salesforce de la siguiente manera:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3',
            'NAME': 'salesforce_db',
        },
        'salesforce': {
            'ENGINE': 'salesforce.backend',
            "CONSUMER_KEY" : 'EDIT: tu clave obtenida.......................',
            "CONSUMER_SECRET" : 'EDIT: tu clave secreta',
            'USER': 'EDIT: tu@usuario.nombredeacceso',
            'PASSWORD': 'EDIT: contraseña + token_de_seguridad',
            'HOST': 'https://login.salesforce.com',
        }
    }
    

    Aquí, hemos agregado una nueva configuración de base de datos para la base de datos de Salesforce, con el ENGINE configurado como salesforce.backend. También hemos especificado las credenciales de inicio de sesión de Salesforce (USER y PASSWORD), así como la URL de instancia de Salesforce (HOST). Ten en cuenta que es necesario proporcionar la CONSUMER_KEY y la CONSUMER_SECRET que se obtienen al registrar una aplicación conectada de Salesforce con Autenticación OAuth 2.0.

    Una vez que la base de datos esté conectada, podemos realizar llamadas a la API de Salesforce utilizando Python y la biblioteca simple_salesforce. Por ejemplo, para consultar registros de un objeto de Salesforce, podemos hacer lo siguiente:

    from simple_salesforce import Salesforce
    
    sf = Salesforce(username='EDIT: tu@usuario.nombredeacceso',
                    password='EDIT: contraseña + token_de_seguridad',
                    security_token='EDIT: tu_token_de_seguridad')
    
    cuentas = sf.query("SELECT Id, Name FROM Account")
    
    for cuenta in cuentas['records']:
        print(cuenta['Id'], cuenta['Name'])
    

    Aquí, hemos creado un objeto Salesforce utilizando las credenciales y luego consultamos el objeto Account para obtener los registros. Los resultados se devuelven como un diccionario de registros, que podemos recorrer para acceder a los valores de campo individuales.

    Además, podemos especificar el tiempo de espera para las consultas de Salesforce configurando SALESFORCE_QUERY_TIMEOUT en segundos en el archivo settings.py. Por ejemplo, para establecer un tiempo de espera de 15 segundos para las consultas a Salesforce, podemos agregar la siguiente línea:

    SALESFORCE_QUERY_TIMEOUT = (4, 15)
    

    Aquí, el valor (4, 15) significa que el tiempo de espera se establecerá en 15 segundos, con un tiempo de espera inicial de 4 segundos antes de que comience el tiempo de espera.

Comments are closed.