Skip to main content
Version: v2.0.0

Run Python code

You can write custom Python code to interact with components and queries. To do that, you just need to create a new query and select Run Python Code from the available datasources.

Run JavaScript code

Example: Using Python code to trigger component specific actions

  • Let's drag a button and a text widget onto the canvas. We will set a text on the text component and trigger button click event from the Python query.

  • Click on the + on the query panel to create a query and select Run Python code from the available datasources

  • Let's write the code in Python Editor and save the query:

    class Person:
    def __init__(self, name, age):
    self.name = name
    self.age = age

    def myfunc(self):
    return "Hello my name is " + self.name

    p1 = Person(tj_globals.currentUser.firstName, 36)

    components.text1.setText(p1.myfunc())
    components.button1.click()
  • The code above has a function myfunc which returns a string and we using the component specific action to set the text component's value from the Python query. We are also triggering the button click using components.button1.click()

tip
  • ToolJet's global variables can be accessed using tj_globals. ex: tj_globals.currentUser.firstName
  • As of now, Run Python code only supports the Python standard library only.
  • Let's edit the properties of widgets:
    • Add an event handler to the button - Select On Click event, Show alert action, and set a success message Triggered using RunPy. This will show a success alert popup whenever the button click event is triggered from the Python code.
    • For the text component, we don't have to edit any property since we are changing the value directly from the Python code.
Run Python code

You can also write custom Python code to get the data from External APIs and manipulate the response for graphical representation.

info

Issues with writing custom Python code? Ask in our Slack community.