After updating the article, we call self.refresh_data_bindings
to reflect any changes in the articles as displayed on the Homepage.
Your edit_article_button_click
should look like this:
def edit_article_button_click(self, **event_args):
# Create a copy of the existing article from the Data Table
article_copy = dict(self.item)
# Open an alert displaying the 'ArticleEdit' Form
# set the `self.item` property of the ArticleEdit Form to a copy of the article to be updated
save_clicked = alert(
content=ArticleEdit(item=article_copy),
title="Update Article",
large=True,
buttons=[("Save", True), ("Cancel", False)]
)
# Update the article if the user clicks save
if save_clicked:
anvil.server.call('update_article', self.item, article_copy)
# Now refresh the page
self.refresh_data_bindings()
Run your app and you’ll see that you can now update your articles!
