Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zonyitoo/sysueduadminsystem
Our homework of Software Engineering
https://github.com/zonyitoo/sysueduadminsystem
Last synced: 3 months ago
JSON representation
Our homework of Software Engineering
- Host: GitHub
- URL: https://github.com/zonyitoo/sysueduadminsystem
- Owner: zonyitoo
- Created: 2012-12-28T12:34:10.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2013-01-01T08:01:56.000Z (almost 12 years ago)
- Last Synced: 2023-05-12T08:20:17.315Z (over 1 year ago)
- Language: JavaScript
- Size: 1.48 MB
- Stars: 4
- Watchers: 5
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Education Administration System
This is our homework of Software Engineering*Developing* Be careful, it is awesome!
## Members
* [月亮脸](https://github.com/iphkwan) Project Manager
* [虫尾巴](https://github.com/19thhell) Front-end Web Developer
* [尖头叉子](https://github.com/zonyitoo) Server Side Developer
* [大脚板](https://github.com/sheepke) Server Side Developer## Installation
### Django Web FrameworkOur server use Django Web Framework as the sever side framework.
```bash
sudo apt-get install python-pip # the Python Package Index(PyPI)
sudo pip install django
```Invoke the Python Interpreter and type commands as below
```python
>>> import django
>>> django.VERSION
(1, 4, 2, 'final', 0) # You may be glad to see this.
>>>
```Install Django AJAX-utils, xlutils
```bash
sudo pip install django-ajaxutils xlutils
```### PostgreSQL Database
PostgreSQL(Post-gress-Q-L), often simply Postgres, is an object-relational database management system (ORDBMS) avaliable for many platforms.
Install related packages
```bash
sudo apt-get install postgresql postgresql-client postgresql-server-dev-all # Postgresql server & client
```Create a new database named `easdb`,own by `eas`,password is `eduadminsystem`
```bash
sudo -u postgres createuser eas -P
sudo -u postgres createdb -O eas easdb
```Install the PostgreSQL adapter for Python and a simple Django Utility to configure Django application by `DATABASE_URL` environment variable..
```bash
sudo pip install psycopg2 dj-database-url
```Create tables and generate testing data.
```bash
python manage.py syncdb && ./test/run.py
```Delete database
```
sudo -u postgres dropdb easdb
```### Apache HTTP Server
Install Apache HTTP Server and dependences
```bash
sudo apt-get install apache2 libapache2-mod-wsgi
```Then create a new file in `/etc/apache2/sites-enabled/` with contents as below (delete the default configure file if exists), replace `[PATH_TO_PROJECT]` with the abslute path of the project directory. For example: `/home/zonyitoo/workspace/EduAdminSystem`
```apache
ServerName EduAdminSystem
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.soRewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}ServerName EduAdminSystem
DocumentRoot [PATH_TO_PROJECT]/
WSGIScriptAlias / [PATH_TO_PROJECT]/apache/wsgi.pyAlias /static [PATH_TO_PROJECT]/gstatic
SSLEngine OnSSLCertificateFile [PATH_TO_PROJECT]/apache/eas.cert
SSLCertificateKeyFile [PATH_TO_PROJECT]/apache/eas.key
Order deny,allow
Allow from all
Order deny,allow
Allow from all
```
Then activate the SSL module of Apache and restart Apache Daemon
```
sudo a2enmod ssl
sudo service apache2 restart
```## Shortcuts
Install all the required python packages by
```
sudo pip install -r requirements.txt
````resetdb.sh` is a script for developers to reset database.
```bash
./resetdb.sh ## If you get errors, please tell us
```## Document
Our document is written in Chinese and composed by LaTeX. You can clone it by```bash
git submodule update
```Click [Here](https://github.com/zonyitoo/EduAdminSystemDoc) for more details.
## Trouble Shooting
### How to deploy it?Run `python manage.py runserver 0.0.0.0:80` directly. If you get error, please make sure that you have installed all the related packages. And you should gain the root priviledge for assessing the 80 port.
### Why static files I saw in the browser are not the lastest version?
Execute `python manange.py collectstatic` after modifying static files. CAUTIONS! Don't try to modify the files in `/gstatic`.
## Reference
* [Django Project](https://www.djangoproject.com/) Django is a high-level python web framework that encourages rapid development and clean, pragmatic design.
* [Bootstrap](https://github.com/twitter/bootstrap) Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created and maintained by Mark Otto and Jacob Thornton.
* [PostgreSQL](http://www.postgresql.org/) PostgreSQL is a powerful, open source object-relational database system.
* [Python](http://www.python.org/) Python is a programming language that lets you work more quickly and integrate your systems more effectively. You can learn to use Python and see almost immediate gains in productivity and lower maintenance costs.## Submit
* Jan 3, 2013 23:00
* Mail to 杨腾飞
* 学号(后两位)名...项目
* xxx.doc/xxx.tex 打印一份
* 3~5min 视频
* /CODE 文件夹装代码
* 其它