Job Search Engine


922 浏览 5 years, 8 months

2.1 创建应用

版权声明: 转载请注明出处 http://www.codingsoho.com/

创建项目及应用

对于每个django项目,我们首先要用它自带的脚本django-admin.py创建项目

创建项目

django-admin.py startproject jse

默认它为创建一个应用jse,对于小项目来说你可以把所有功能都放在一个应用里做完。但是,为了功能的独立性和项目的扩展,我们最好将不同的模块用不用的应用来实现。本例中,我们首先创建应用job_entry来处理工作条目相关的操作。

创建应用 job_entry

python manage.py startapp job_entry

创建数据模型

该模型跟爬虫数据库一致,我们不需要手动的去创建数据库,django的migrate功能能够自动帮助我们创建数据表

from django.utils.translation import ugettext_lazy as _

class JobEntry(models.Model):
    title = models.CharField(_("title"),  max_length=200, null=False, blank=False)
    salary = models.CharField(_("salary"),  max_length=30,null=False, blank=False)
    region = models.CharField(_("region"),  max_length=30,null=False, blank=False)
    degree = models.CharField(_("degree"),  max_length=30,null=False, blank=False)
    experience = models.CharField(_("experience"),  max_length=30,null=False, blank=False)
    company = models.CharField(_("company"),  max_length=30,null=False, blank=False)
    industry = models.CharField(_("industry"),  max_length=30,null=False, blank=False)
    description = models.TextField(_("description"),  max_length=300,null=True, blank=True)
    href = models.CharField(_("href"),  max_length=300, null=False, blank=False)
    created = models.DateTimeField(_("creatd")) #, auto_now_add=True, auto_now=False)

    def __unicode__(self):
        return self.title

数据库生成

首先你要创建对应的数据库,数据表的创建直接通过django的迁移功能来实现

在setting文件里配置数据库

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    },     
}

执行数据的迁移

python manage.py makemigrations
python manage.py migrate

创建超级用户

python manage.py createsuper

后台管理

将新建的模型在admin进行注册

class JobEntryAdmin(admin.ModelAdmin):
    class Meta:
        model = JobEntry

admin.site.register(JobEntry, JobEntryAdmin)