职工信息管理系统python
时间: 2023-09-11 21:04:58 浏览: 34
职工信息管理系统是一个非常典型的 CRUD 应用程序,可以用 Python 来实现。以下是一个简单的示例:
1. 安装必要的库
```
pip install flask flask_sqlalchemy
```
2. 创建 Flask 应用程序
```python
from flask import Flask, render_template, request, redirect, url_for
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///employees.db'
db = SQLAlchemy(app)
class Employee(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(100), nullable=False)
position = db.Column(db.String(100), nullable=False)
salary = db.Column(db.Float, nullable=False)
def __repr__(self):
return f'<Employee {self.name}>'
@app.route('/')
def index():
employees = Employee.query.all()
return render_template('index.html', employees=employees)
@app.route('/add', methods=['GET', 'POST'])
def add_employee():
if request.method == 'POST':
name = request.form['name']
position = request.form['position']
salary = request.form['salary']
employee = Employee(name=name, position=position, salary=salary)
db.session.add(employee)
db.session.commit()
return redirect(url_for('index'))
return render_template('add.html')
@app.route('/edit/<int:id>', methods=['GET', 'POST'])
def edit_employee(id):
employee = Employee.query.get(id)
if request.method == 'POST':
employee.name = request.form['name']
employee.position = request.form['position']
employee.salary = request.form['salary']
db.session.commit()
return redirect(url_for('index'))
return render_template('edit.html', employee=employee)
@app.route('/delete/<int:id>', methods=['GET', 'POST'])
def delete_employee(id):
employee = Employee.query.get(id)
db.session.delete(employee)
db.session.commit()
return redirect(url_for('index'))
```
3. 创建 HTML 模板
index.html
```html
<!DOCTYPE html>
<html>
<head>
<title>Employee Management System</title>
</head>
<body>
<h1>Employee Management System</h1>
<p><a href="{{ url_for('add_employee') }}">Add Employee</a></p>
<table>
<tr>
<th>Name</th>
<th>Position</th>
<th>Salary</th>
<th>Action</th>
</tr>
{% for employee in employees %}
<tr>
<td>{{ employee.name }}</td>
<td>{{ employee.position }}</td>
<td>{{ employee.salary }}</td>
<td>
<a href="{{ url_for('edit_employee', id=employee.id) }}">Edit</a>
<a href="{{ url_for('delete_employee', id=employee.id) }}">Delete</a>
</td>
</tr>
{% endfor %}
</table>
</body>
</html>
```
add.html
```html
<!DOCTYPE html>
<html>
<head>
<title>Add Employee</title>
</head>
<body>
<h1>Add Employee</h1>
<form method="POST" action="{{ url_for('add_employee') }}">
<label for="name">Name:</label>
<input type="text" id="name" name="name"><br>
<label for="position">Position:</label>
<input type="text" id="position" name="position"><br>
<label for="salary">Salary:</label>
<input type="text" id="salary" name="salary"><br>
<input type="submit" value="Add">
</form>
</body>
</html>
```
edit.html
```html
<!DOCTYPE html>
<html>
<head>
<title>Edit Employee</title>
</head>
<body>
<h1>Edit Employee</h1>
<form method="POST" action="{{ url_for('edit_employee', id=employee.id) }}">
<label for="name">Name:</label>
<input type="text" id="name" name="name" value="{{ employee.name }}"><br>
<label for="position">Position:</label>
<input type="text" id="position" name="position" value="{{ employee.position }}"><br>
<label for="salary">Salary:</label>
<input type="text" id="salary" name="salary" value="{{ employee.salary }}"><br>
<input type="submit" value="Update">
</form>
</body>
</html>
```
4. 运行应用程序
```python
if __name__ == '__main__':
app.run(debug=True)
```
这就是一个简单的职工信息管理系统应用程序,您可以根据需要进行扩展和修改。