当前位置: 编程技术>移动开发
本页文章导读:
▪Grappelli 配备 Grappelli 配置
1. 下载安装,按照官方教程操作,不多说2. 添加APPsettings.py文件中添加如下代码:
INSTALLED_APPS = (
'grappelli',
)
一定需要添加在admin前面3. 添加url映射urls.py文件中添加如下代码:
(r.........
▪ HttpClient的三种超时说明 HttpClient的3种超时说明
......
▪ 跨施用(跨进程)发送广播和接收广播 跨应用(跨进程)发送广播和接收广播
跨应用发送和接收广播,与同应用下的情况差不多,只需要添加一个权限,以及配置一下receiver的android:process属性即可
发送广播的应用中:
Inten.........
[1]Grappelli 配备
来源: 互联网 发布时间: 2014-02-18
Grappelli 配置
1. 下载安装,按照官方教程操作,不多说
2. 添加APP
settings.py文件中添加如下代码:
一定需要添加在admin前面
3. 添加url映射
urls.py文件中添加如下代码:
须添加在admin前面
4.修改admin静态文件前缀
a.在本地环境的话,在settings.py文件中修改ADMIN_MEDIA_PREFIX为如下:
b.在部署环境的话,这样修改:
5.一些定制
经过上面四步,grappelli这个APP已经能够正常使用了,你重新登录一下admin后台,会发现整个界面已经完全变了,事实上,我非常喜欢这种样式,使用Django做开发的一大特点就是很多事情甚至你自己不需要做,有很多优秀的第三方库帮助你解决各种问题。事实上,grappelli还有很多可以定制的地方,这里仅简单介绍一二,更详细的还需要仔细去查看其官方文档。
(1)设置admin后台title——在settings.py中加入:
(2)安装仪表盘
1.在settings.py中添加相应APP(要放在grappelli前面):
2.继续在settings.py中添加上下文处理器context-processor:
3.执行命令
此命令将在项目目录里创建一个名为dashboard.py的文件,此文件里有一个名为customIndexDashboard的类,这个类生成admin后台首页的仪表盘dashboard。
注意:一定要把生成的Dashboard文件挪到infimob/infimob下面
"dashboard.py needed to move to myproj/myproj"
4.最后,你需要在settings.py中添加这句:
1. 下载安装,按照官方教程操作,不多说
2. 添加APP
settings.py文件中添加如下代码:
INSTALLED_APPS = ( 'grappelli', )
一定需要添加在admin前面
3. 添加url映射
urls.py文件中添加如下代码:
(r'^grappelli/',include('grappelli.urls')),
须添加在admin前面
4.修改admin静态文件前缀
a.在本地环境的话,在settings.py文件中修改ADMIN_MEDIA_PREFIX为如下:
ADMIN_MEDIA_PREFIX = 'http://127.0.0.1:8000/static/grappelli/'
b.在部署环境的话,这样修改:
ADMIN_MEDIA_PREFIX = 'http://domain/static/grappelli/'
5.一些定制
经过上面四步,grappelli这个APP已经能够正常使用了,你重新登录一下admin后台,会发现整个界面已经完全变了,事实上,我非常喜欢这种样式,使用Django做开发的一大特点就是很多事情甚至你自己不需要做,有很多优秀的第三方库帮助你解决各种问题。事实上,grappelli还有很多可以定制的地方,这里仅简单介绍一二,更详细的还需要仔细去查看其官方文档。
(1)设置admin后台title——在settings.py中加入:
GRAPPELLI_ADMIN_TITLE='your_title'
(2)安装仪表盘
1.在settings.py中添加相应APP(要放在grappelli前面):
INSTALLED_APPS = ( 'grappelli.dashboard', 'grappelli', 'django.contrib.admin', )
2.继续在settings.py中添加上下文处理器context-processor:
TEMPLATE_CONTEXT_PROCESSORS = ( "django.contrib.auth.context_processors.auth", "django.core.context_processors.request", "django.core.context_processors.i18n", "django.contrib.messages.context_processors.messages", )
3.执行命令
python manage.py customdashboard
此命令将在项目目录里创建一个名为dashboard.py的文件,此文件里有一个名为customIndexDashboard的类,这个类生成admin后台首页的仪表盘dashboard。
注意:一定要把生成的Dashboard文件挪到infimob/infimob下面
"dashboard.py needed to move to myproj/myproj"
4.最后,你需要在settings.py中添加这句:
GRAPPELLI_INDEX_DASHBOARD = 'yourproject.dashboard.CustomIndexDashboard'
[2] HttpClient的三种超时说明
来源: 互联网 发布时间: 2014-02-18
HttpClient的3种超时说明
/* 从连接池中取连接的超时时间 */
ConnManagerParams.setTimeout(params, 1000);
/* 连接超时 */
HttpConnectionParams.setConnectionTimeout(params, 2000);
/* 请求超时 */
HttpConnectionParams.setSoTimeout(params, 4000);
第一行设置ConnectionPoolTimeout:这定义了从ConnectionManager管理的连接池中取出连接的超时时间,此处设置为1秒。
第二行设置ConnectionTimeout: 这定义了通过网络与服务器建立连接的超时时间。Httpclient包中通过一个异步线程去创建与服务器的socket连接,这就是该socket连接的超时时间,此处设置为2秒。
第三行设置SocketTimeout: 这定义了Socket读数据的超时时间,即从服务器获取响应数据需要等待的时间,此处设置为4秒。
[3] 跨施用(跨进程)发送广播和接收广播
来源: 互联网 发布时间: 2014-02-18
跨应用(跨进程)发送广播和接收广播
跨应用发送和接收广播,与同应用下的情况差不多,只需要添加一个权限,以及配置一下receiver的android:process属性即可
发送广播的应用中:
Intent intent = new Intent("info.zhegui.receiver.interprocess"); sendBroadcast(intent);
注意要在manifest.xml添加接收广播的权限,这个权限是receiver自定义的
<uses-permission android:name="info.zhegui.receiver.RECEIVE"/>
接收广播的应用中:
public class MyReceiver extends BroadcastReceiver { private final String TAG = this.getClass().getName(); @Override public void onReceive(Context content, Intent intent) { Log.i(TAG, "intent:" + intent); } }
在manifest.xml中添加自定义权限,以及配置receiver的几个属性
<permission android:name="info.zhegui.receiver.RECEIVE" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <receiver android:name="info.zhegui.receiver.MyReceiver" android:exported="true" android:permission="info.zhegui.receiver.RECEIVE" android:process=":remote" > <intent-filter> <action android:name="info.zhegui.receiver.interprocess" /> </intent-filter> </receiver> </application>
需要注意的三个地方:
1,自定义权限
2,android:exported="true"
3,android:process=":remote"
参考文档:
http://developer.android.com/guide/topics/manifest/receiver-element.html
http://developer.android.com/training/articles/security-tips.html
最新技术文章: