安固途径

知识来源于感觉和经验

Django提供JsonAPI的步骤

2015-11-18, 星期三|
Django开发

AJAX的好处是利用JavaScript请求服务器并操作DOM,局部加载网页,不用重新刷新页面,提高了访问速率,增强了交互效果。坏处是搜索引擎在看源码的时候看不到。问题是Django如何提供json?

下面以付费软件库作json为示例

1. 定义数据库的表

修改models.py

#models.py
from django.db import models

class PaidSoftware(models.Model):
    wizard_name = models.CharField(max_length=300)
    description = models.CharField(max_length=500)
    official_url = models.URLField()
    attachment_url = models.URLField()

执行migrate生成Django需要的表

$ python manage.py migrate

修改admin.py

#admin.py
from django.contrib import admin
f
...
阅读全文

fedora中设置服务自启动

2015-11-16, 星期一|
linux系统设置

fedora中设置服务自启动可以用下面的命令

chkconfig servicename on

例如设置mariadb.service自启动可以用

# chkconfig mariadb on

请参考博客园http://www.cnblogs.com/nerxious/archive/2013/01/18/2866548.html

...
阅读全文

安装并注册Sublime_Text_3

2015-11-14, 星期六|
安装软件账号

一不小心重装了个系统,编辑神器Sublime_Text也要重装,这里简单记录一下重装的过程。如果下次重装系统(呸呸呸,你才重装系统呢!):我是说如果),参考此文可以节约时间。

安装

不用再找搜索引擎了(省得神马百度太可怜了),直接goto http://www.sublimetext.com/3好了,看是哪个Platform,对应着下载多好,此次安装是Linux版的。

由于用的是fedora不是Ubuntu,于是悲剧。

下载Sublime_Text3并解压

$ wget http://c758482.r82.cf2.rackcdn.com/sublime_text_3_build_3083_x64.tar.bz2
$ bzip2 -d sublime_text_3_build_3083_x64.tar.bz2
$ tar -xvf sublime_text_3_build_3083_x64.tar

安装一下

$ sudo mv sublime_text_3 /opt/
$ cp /opt/sublime_text_3/sublime_text.desktop /usr/share/a
...
阅读全文

MySQL导入数据相关操作

2015-11-10, 星期二|
数据库软件

有时候由于数据库表结构的更改,需要对MySQL数据库进行备份和导入操作,掌握基本的MySQL的操作甚为必要。

使用某数据库

例如使用数据库app_feat:

登录并使用

$ mysql -uroot -p app_feat;

登录后使用

MariaDB [(none)]> use app_feat;

登录MySQL后显示数据库和表

MariaDB> show databases;
MariaDB [app_feat]> show tables;

描述表结构

例如描述表auth_user:

MariaDB [app_feat]> describe auth_user;

导出数据库到.sql文件

例如导出数据库app_feat到文件app_feat.sql

$ mysqldump -uroot -p app_feat > app_feat.sql

例如导出数据库app_feat中的表blog_article到文件blog_article.sql

$ mysqldump -uroot -p app_feat blog_article> blog
...
阅读全文

Django1.8 create_user 时出现IntegrityError

2015-11-10, 星期二|
Django修复开发

使用Django1.8在admin界面,或shell下create_user, 出现如下错误

IntegrityError: (1048, "Column 'last_login' cannot be null")

原因是在Django1.8中,对last_login作了更改,允许last_login为null, 原文链接是

https://docs.djangoproject.com/en/1.8/releases/1.8/#abstractuser-last-login-allows-null-values

解决办法有两种

  1. python manage.py migrate
  2. 若第一种方法报"Table 'xx' already exists"错误,可以直接修改数据库表auth_user的结构,以使last_login, Null=Yes
    • 可以使用PHPMyAdmin修改
    • 可以使用SQL语句在Mysql客户端修改

参考stackoverflow

...
阅读全文