kenken999's picture
test
d8bbcde
raw
history blame
1.73 kB
import gradio as gr
class CRUDApp:
def __init__(self):
self.data = []
def create(self, name, age):
self.data.append({"name": name, "age": age})
return self.data
def read(self):
return self.data
def update(self, index, name, age):
if index < len(self.data):
self.data[index] = {"name": name, "age": age}
return self.data
def delete(self, index):
if index < len(self.data):
del self.data[index]
return self.data
with gr.Blocks() as gradio_interface:
gr.Markdown("CRUD Application")
with gr.Row():
with gr.Column():
name_input = gr.Textbox(label="Name")
age_input = gr.Number(label="Age")
create_button = gr.Button("Create")
with gr.Column():
read_button = gr.Button("Read")
update_button = gr.Button("Update")
delete_button = gr.Button("Delete")
output = gr.Dataframe(label="Data")
crud_app = CRUDApp()
def create_event(name, age):
return crud_app.create(name, age)
def read_event():
return crud_app.read()
def update_event(index, name, age):
return crud_app.update(index, name, age)
def delete_event(index):
return crud_app.delete(index)
create_button.click(fn=create_event, inputs=[name_input, age_input], outputs=[output])
read_button.click(fn=read_event, outputs=[output])
update_button.click(fn=update_event, inputs=[gr.Number(label="Index"), name_input, age_input], outputs=[output])
delete_button.click(fn=delete_event, inputs=[gr.Number(label="Index")], outputs=[output])
#gr.Interface(gradio_interface, "gradio_interface").launch()