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 sabe Truffle a qué contrato me estoy refiriendo?

Después de ejecutar truffle migrate, puedo ejecutar (en una consola) contract = await MyContractName.deployed(). No lo he probado en la red principal, pero puedo ejecutar este mismo código en las redes de prueba y Truffle sabe a qué contrato me refiero.

¿Cómo lo sabe? Debe haber otros contratos con el mismo nombre que el mío, ¿puede alguien explicar cómo Truffle sabe a qué contrato me estoy refiriendo?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Truffle mantiene un registro de los contratos desplegados en cada red en su directorio de construcción. Cuando ejecutas truffle migrate, compila y despliega tu contrato en una red específica y crea un archivo JSON con los metadatos del contrato desplegado en el directorio de construcción. Este archivo de metadatos contiene la dirección del contrato desplegado y su ABI, que Truffle utiliza para interactuar con el contrato.

    Cuando ejecutas MyContractName.deployed(), Truffle busca los metadatos del contrato en el directorio de construcción para encontrar la dirección y ABI del contrato, y devuelve una instancia del contrato que apunta a la dirección correcta. Incluso si hay otros contratos con el mismo nombre que el tuyo, Truffle siempre sabrá qué instancia de contrato devolver en función de la red y la dirección del contrato.

Comments are closed.