下载新浪音乐

新浪音乐没有直接下载音乐的地方。。听到一首好歌想要下载怎么办呢··找出它的下载地址

只要你得到新浪音乐的短地址,就行啦。(你可以分享一条歌曲获得短地址)

http://fatkun.com/sina.php

这样就可以找出新浪音乐的下载地址,从此爽歪歪..

 


更换新主题

Zindi主题改了一下,主要是改了页面宽度,文字大小。。我还是喜欢14px的文字,看起来容易阅读。

悲剧的是发现评论不是嵌套的···o(╯□╰)o这个还没改。。

嵌套评论是必须的··怎么能木有呢···迟点试着改一下。。


Django values(*fields) 如何使用

官方文档:https://docs.djangoproject.com/en/1.3/ref/models/querysets/#values

1. values(*fields)

这个方法返回的是ValuesQuerySet,是QuerySet 的子类,也就是说,你可以用QuerySet里的方法。 需要注意的是,返回的不是list,不要直接当list来用了。对ValuesQuerySet遍历,每一个元素是“字典”dict。

当不传入参数时,返回这个model的所有字段

AppDef.objects.values()
[{'creator': u'admin''apptype_name': u'uc3g''apptype_chn_name': u'3G\u95e8\u6237''note': u'', ...},...]

当传入参数时,只会列出你指定的参数

AppDef.objects.values('apptype_name')
[{'apptype_name': u'uc3g'},...]

也可以加上filterfilter在前或者后面都是一样的

AppDef.objects.filter(pk=1).values('apptype_name')
AppDef.objects.values('apptype_name').filter(pk=1)

如果想把关联的字段也一起查出来
OneToOneField, ForeignKey 和ManyToManyField 关系的都可以。
ManyToManyField 在Django1.3版后才支持
LogTypeDef定义了一个appForeignKey

LogTypeDef.objects.filter(pk=6).values('pk''app__apptype_name')
[{'pk': 6L, 'app__apptype_name': u'wapsearch'}]

如果你只想拿到app_id,可以这样
下面三种方法都是一样的,只是返回的结果名字对应你的查询语句

LogTypeDef.objects.filter(pk=6).values('pk''app_id')
LogTypeDef.objects.filter(pk=6).values('pk''app')
LogTypeDef.objects.filter(pk=6).values('pk''app__id')

注意在关联关系为多对多的时候,它只会帮你一条一条的列出来,而不会帮你合并为一个list
例如会返回类型的结果:同一个pk并不会帮你合并app_id

[{pk: 6, app_id: 2}{pk: 6, app_id: 3}]

2. 注意事项

当同时使用distinct()和values(),需要注意order_by() (或者默认 model ordering) ,会自动加入select 中作为distinct项,所以返回的结果你以为是重复的,其实是order by的字段没列出来。
如果在extra() 之后用values(),一定要把extra用到的字段也加进来;如果extra()在values()之后,extra的字段会自动加进select。
Because ManyToManyField attributes and reverse relations can have multiple related rows, including these can have a multiplier effect on the size of your result set. This will be especially pronounced if you include multiple such fields in your values() query, in which case all possible combinations will be returned. (这个不太懂什么意思,应该是当values有多个manytomanyfield的时候,会尽量合并一些)

3. 适用范围

l 只需要返回dict,而不需要返回model object
l 只需要返回简单的数据(包括层次简单)

4. Values_list

values一样,只是返回的不是字典而是元组。


Extjs FormPanel.getForm().getValues()对下拉框(Combobox)取值的问题

遇到的问题

我使用的是Extjs3.3
在FormPanel中,可以通过 FormPanel.getForm().getValues()取得这个FormPanel下的所有值。
但是,在取下拉框值时,得到的是显示名称(displayValue),而不是真正的值(value)

解决方法

原因是没有在下拉框指定hiddenName,指定hiddenName 和 name的值一样就可以了。

2011-8-30update : 用FormPanel.getForm().getFieldValues()可以不用设置hiddenName。


Extjs3 EditorGridPanel的beforeedit事件参数

beforeedit : ( Object e )

只有一个事件(edit event)参数,但这个参数内容很丰富,可以满足很多需求。
参数分别如下:
grid – 表格本身
record – 你要编辑的那一行记录
field – 你编辑的列名
value – 你编辑的值
row – 行号
column – 列号
cancel – 设这个为true或者return false可以取消编辑(不显示那个编辑框)


Extjs renderer参数

function myRenderer(value, cellmeta, record, rowIndex, columnIndex, store) {
[...]
}
看上面的myRenderer,依次最多有6个参数
1 value: 当前单元格的值
2 cellmeta里保存的是cellId单元格id,id不知道是干啥的,似乎是列号,css是这个单元格的css样式。(没看懂???)
3 record:这行的所有数据,可以通过record.data["id"]获得本行中“id”字段的值。
4 rowIndex:行号,不是从头往下数的意思,而是计算了分页以后的结果。
5 columnIndex:列号
6 store:整个grid关联的数据

来源:http://blog.sina.com.cn/s/blog_5140a6a50100bfat.html
关于该store的访问,可以看http://blog.chinaunix.net/u1/37472/showart_2190023.html