LinearLayout这些布局view默认是没有点击事件,所以点击的事件传递到下面一层的布局了,xml布局设置 android:clickable="true",下一层就不响应了。
参考:http://blog.csdn.net/yung7086/article/details/17063323
公司API服务器转放在阿里云上。因为我平常用的Python Web框架Django要多一点,记下部署Flask需要注意的几点,这不是一篇Step By Step的教程,如果需要看教程,中文的推荐这一篇:http://www.oschina.net/translate/serving-flask-with-nginx-on-ubuntu
安装过程就不说了,其实主要在uWSGI的配置上,uwsgi.ini文件内容如下:
[uwsgi] #application's base folder base = /base/youproject #这里是你的项目位置 #python module to import app = run #对应你的Flask启动文件,我在项目里叫run.py,如果你的是app.py的话,那么这个run改为app module = %(app) pythonpath = %(base) #socket file's …因为用pip安装curl时出了点问题,直接下载源码安装。
调用的时候出以下错:
ImportError: pycurl: libcurl link-time version (7.19.7) is older than compile-time version (7.20.0)
太久不配服务器了,到处都是坑。。。
解决方法:
rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-12.rhel6.noarch.rpm yum install libcurl
来源:https://gogo244.wordpress.com/2014/09/25/libcurl-link-time-version-is-older-than-compile-time-version/
部署公司产品博客的时候,用python manage.py syncdb命令,创建表什么的都很正常,在创建超级用户时报如下错:
self.UserModel._default_manager.db_manager(database).create_superuser(**user_data) TypeError: create_superuser() got an unexpected keyword argument 'nick_name'google半天无解,试着在自定义里注释掉nick_name唯一的代码,就ok了,暂时不知道为嘛,先记下。
USERNAME_FIELD = 'email' #REQUIRED_FIELDS = ['nick_name']首先,要保证你把gitlite-admin仓库clone到本地,并有读写权限。
管理员用以下命令把自己的公钥传到服务器,如下,目录改成正确的目录:
scp ~/.ssh/id_rsa.pub user@server:/git_home_dir/git-admin.pub然后git clone git@server:gitolite-admin.git把git管理仓库拿到本地。
添加开发成员先叫开发人员用ssh-keygen命令生成公发给管理员,把它复制到gitlite-admin/keydir下,比如名字叫laonan.pub。
在gitlite-admin/conf下找到gitolite.conf,修正成如下样子,laonan就是新加进去的开发成员,注意这里的配置应该跟公钥的文件名相同。有读写删除等权限。
在gitlite-admin仓库把以上新增文件和改动push到服务器即可。
git add conf git add keydir git commit -m "added laonan." git push …重装gitolite,配置了N遍,在取gitolite-admin的时候一直显示
FATAL: R any gitolite-admin git-admin DENIED by fallthru (or you mis-spelled the reponame) fatal: Could not read from remote repository.相当郁闷,百无聊赖ls -a,把.git为前缀的隐藏文件(如.gitolite)一个个删除干净,居然TMD行了。
花掉一个小时,NND个胸。
分支
查看远程分支: $ git branch -a 查看本地分支: $ git branch 创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支 切换分支:$ git checkout [name] 创建新分支并立即切换到新分支:$ git checkout -b [name]远程仓库相关
检出: $ git clone [url] …之前虽然知道使用python虚拟环境是一个好习惯,但是主要是基于python2.7以及Django框架,没太使用Virtualenv。最近半年加入Flask等别的框架,以及发现最新版本的ubuntu都已经默认是python3.0了,所以,还是用Virtualenv吧。
创建虚拟环境:
virtualenv [虚拟环境名称]启动虚拟环境:
cd [虚拟环境目录] source ./bin/activate退出虚拟环境:
deactivate先用下面命令生成*.pub公钥,拷贝到/home/git/repositories/gitosis-admin.git/gitosis-export/keydir/目录下
ssh-keygen -t rsa然后修改authorized_keys文件,加入你的公钥内容。
done.
Android L虽然早在6月份的Google I/O大会上就已经介绍了,但到实际开发估计还有几个月,在伯乐在线看到一篇介绍Android L动画的文章,嗯,挺有意思,就是不知道流畅度如何,相比iOS,Android的动画流畅更是需要担忧的。
http://blog.jobbole.com/77015/
FaceBook的一个弹性动画框架,使用很简单,把jar包复制到libs里,直接引用。
第一个坑,django-ckeditor引发,
File "manage.py", line 10, in execute_from_command_line(sys.argv) File "/Library/Python/2.7/site-packages/Django-1.7-py2.7.egg/django/core/management/__init__.py", line 385, in execute_from_command_line utility.execute() File "/Library/Python/2.7/site-packages/Django-1.7-py2.7.egg/django/core/management/__init__.py", line 354, in execute django.setup() File "/Library/Python/2.7/site-packages/Django-1.7-py2.7.egg/django/__init__.py", line 21, in setup apps.populate(settings.INSTALLED_APPS) File "/Library/Python/2.7/site-packages/Django-1.7-py2.7.egg/django/apps/registry.py", …在一台服务器上使用pycurl时,碰到如下异常:
pycurl: libcurl link-time ssl backend (nss) is different from compile-time ssl backend (openssl)解决方法:
pip uninstall pycurl export PYCURL_SSL_LIBRARY=nss pip install pycurl下午发现一个问题,通过filter查找数据时,找不到了,但数据库里明明是有的。
Something.objects.select_related().filter(create_datetime__year=year, create_datetime__month=month)settings.py的设置为
TIME_ZONE = Asia/Shanghai USE_TZ = True搞半天不得其解,重建mysql timezone table,重设linux时区,blabla。。。无效。
追踪sql语句:
...EXTRACT(MONTH FROM CONVERT_TZ(`Sometable`.`create_datetime`, 'UTC', 'CST'))....有点怀疑,但是CST也可以算是中国标准时间,一查如下: Central Standard Time (USA) UT-6:00 Central Standard Time (Australia) …
本博客程序从1.5升级到1.6.2,so easy,就修改了tinymce下的urls.py,把django.conf.urls.defaults改成from django.conf.urls import patterns, include, url。
That's all.
妈妈和女朋友再也不用担心我今晚熬夜了:) Yeah!
据江湖传言,如果是从1.4.x升级,就有点麻烦喽,江湖传言在这里,有链接有真相:http://django-china.cn/topic/368/
在urls.py里设置好接口地址,并在微信公众号里面也配置好,如果一切顺利,显示配置成功的话,接下来我们就打算干点实际的东西了,接受事件推送。
当用户在关注,取消关注等行为时,微信服务器会把相关的数据post到你配置好的接口地址上,下面实现一下用户关注(订阅)你的公众号时,你给用户一条欢迎信息的功能。
因为微信给你post的数据是xml格式的,所以要引进lxml这个包来解析,如果是centos,可以这么安装:
$yum install libxml2 $yum install libxml2-devel $yum install libxslt-devel别的操作系统,请自行google之
接收微信服务器post过来的数据的python代码如下:
if request.method == 'POST': str_xml = request.body xml = etree.fromstring(str_xml) msg_type = xml.find('MsgType').text …官方接入文档在这里,但是检验signature的代码,官方只有php的,在Django中的python代码应该这么写:
import hashlib from django.views.decorators.csrf import csrf_exempt from django.http import HttpResponse @csrf_exempt def wechat(request): signature = request.GET.get('signature') timestamp = request.GET.get('timestamp') nonce …微信的自定义菜单的接口要的是json格式数据,如果post过去只要是中文就报(英文都正常):{"errcode":40033,"errmsg":"invalid charset. please check your request, if include \uxxxx will create fail!"}
python的解决方案:
在post过去的json字符串后面加上.encode('utf-8'),比如 menu_json.encode('utf-8')。
2001年到2002年,使用asp为主要开发技术开发网站,偶尔用VB写COM+业务组件,2年。
从03年到09年,使用.net作为主要开发技术做B/S管理软件项目,以及建立垂直电子商务网站,7年。
2010年才开始混开源社区,开始学习python,linux,重新回头练习C语言,到现在为此,3年多一点,哦,差点忘了,这期间还穿插Objective-C,Node.js之类的语言或者技术用于开发衍生项目。
这中间,少不了Java的身影,中间参与过J2EE的项目,但主要职责不是在一线开发,Android的Java代码除外。
讲好话:
C#是一门很好的语言,我现在还认为C#比Java要优雅(很俗,但找不到更恰当的词来形容了),每次写Java代码,碰到类型转换啊,异常处理这些东东的时候,无比怀念C#。 入门门槛低,能用低成本程序员迅速启动项目,比如我曾经的一个同事,就是上海英雄钢笔厂一个多年的钳工上几个月北大青鸟转行过来的,当然,他后来总是怀念以前在国企时福利多么优厚,过年过节可以大块扛肉,大箱拿东西回家的日子,这是后话。 版本升级流畅。 MSDN真全啊,几乎绝大份问题都可以从MSDN中得到答案。 IDE真强大。
不过这男一人变心,看问题的角度一变,有时候优点变缺点,上面2、4、5就是这种情况。
讲坏话:
入门门槛低,往往带着的潜台词是团队整体素质相对低,在项目启动的时候不会暴露太多问题,但一旦进入发展期,团队解决问题的能力不高。这也是多数.net团队只能作中小项目的原因。 MSDN太全了,当在MSDN里找不到解决方案时,习惯性放弃了寻找别的解决方案的尝试。普通.net程序员(非牛B程序员)在google上查阅资料的能力低于使用python等开源技术的程序员。 IDE太强大的后果是,程序员学习.net系列语言其实是学习怎么使用Visual Studio .Net,对语言特性等等往往是在学习了很久之后才意识到。 .net团队习惯性依赖微软的官方技术支持,当出现问题,而官方也没有解决方案时,.net开发人员通常选择的是等微软发布下一个.net版本。 非心灵鸡汤小故事: A:在jQuery插件还没这么发达的年代,我当时所处的一个开发团队有一名Javascript高手,本来打算写一个下拉菜单,但是看到预告说asp.net下一个版本要内置这东西,然后放弃了,而这“下一版本”,等了差不多半年。 B:我担任架构师的某垂直电子商务网站,我首先使用了asp.net的图表控件,但是生成图片的,很不生动,后来打算换silverlight,再后来把这部分开发工作转给另外一个同事,不了了之。。。事实上,当时的flash解决方案处处皆是,而且跟.net结合也不是什么难事,所有人都明白这一点,但是,大家都习惯性地依赖微软,到现在为此,我离开那家公司两年多了。。。还是用当初那个图表控件。 对中小团队来说,VS.NET,Sql Server,Windows服务器等,都价格不菲(要说是可以用盗版,就只能,嗯,啊,今天天气不错啊)…