Chapter 3:
Write server-side Python
Anvil’s Server Modules are a full server-side Python environment. Server Modules cannot be edited or seen by the user, so we can trust them to do what we tell them. This is why we’ll use a Server Module to write to the Data Table.
Step 1: Create a Server Module
Create a Server Module by selecting the App Browser
in the Sidebar Menu and clicking ‘+ Add Server Module’.
Adding a Server Module
Step 2: Store data using a server function
We’ll write a server function to add a new row to the ‘feedback’ Data Table we just created. We’ll use the add_row method to do this.
Add this function to your Server Module:
@anvil.server.callable
def add_feedback(name, email, feedback):
app_tables.feedback.add_row(
name=name,
email=email,
feedback=feedback,
created=datetime.now()
)The @anvil.server.callable decorator allows us to call this function from client code.
We’re using the datetime library to set the ‘created’ column to the current date and time, so you’ll also need to import the datetime class at the top of your Server Module:
from datetime import datetimeIn Chapter 4, we’ll link the server up with the UI.
By