如何在bash脚本中获取当前工作目录名称,甚至更好,只需一个终端命令.
pwd给出了当前工作目录的完整路径,例如/opt/local/bin但我只想要bin
当我access_token从Google API 获得一个时,它会附带一个expires_in值.根据文档,此值指示"访问令牌的剩余生命周期".
这个值的单位是多少?
API端点是'方法',如https://api.foursquare.com/v2/venues/或包含非查询字符串参数的完整URL,如 https://api.foursquare.com/v2/venues/ 5104
换句话说,这两个独立的端点是否被认为是相同的端点?
http://myapi.com/somemodel/1
http://myapi.com/somemodel/2
在MongoDB中使用带有大量可能性的$ in运算符是缓慢/差的形式吗?
posts.find({
author : {
$in : ['friend1','friend2','friend3'....'friend40']
}
})
Run Code Online (Sandbox Code Playgroud)
例如,App Engine不允许您使用超过30个,因为它们直接转换为IN数组中每个项目的一个查询,因此强制您使用他们的方法来处理扇出.虽然这可能是Mongo中最有效的方法,但它的代码要复杂得多,所以我更喜欢使用这种通用方法.
Mongo会有效地为合理大小的数据集执行这些$ in查询吗?
CoffeeScript文档声明列表推导应该能够执行选择/过滤操作:
它们应该能够处理大多数你将使用循环,每个/ forEach,map或select/filter的地方.
你可以想象你可以在一条线上做点什么,result = item for item in list if item % 2 == 0
但是我能来的最近
list = [1,2,3,4]
result = []
for item in list
if item % 2 == 0 then result.push item
Run Code Online (Sandbox Code Playgroud)
什么是最简洁的方法来过滤CoffeeScript中的列表?
作为一个假设的例子,我有一个模型TodoItem和一个模型TodoList.TodoList具有TodoItems的有序列表,并且任何一个TodoItem可以属于任意数量的TodoLists(多对多).除了TodoList中TodoItem的顺序之外,不需要存储关于其关系的其他信息.在数据存储中表示这一点的最佳方法是什么?
有两种实现方法 - 给TodoList类一个db.Key的ListProperty,它将引用TodoItem:
class TodoList(db.Model):
items = db.ListProperty(db.Key)
Run Code Online (Sandbox Code Playgroud)
或者创建一个也包含订购信息的ListItem模型:
class TodoListItem(db.Model):
item = db.ReferenceProperty(TodoItem)
list = db.ReferenceProperty(TodoList)
order = db.IntegerProperty()
Run Code Online (Sandbox Code Playgroud)
我肯定会通过对模型进行非规范化来优化它,但是预优化,任何一种表示都优于另一种吗?
我想做一个Cakefile任务来观看一些CoffeeScript文件,就像我运行一样coffee -c -w js/*.coffee.
它成功地观察并重新编译它们,但是当出现编译错误时它没有将通常的输出记录到终端,就像我刚刚从终端运行脚本一样.知道如何实现这一目标吗?
exec = require('child_process').exec
task 'watch','watch all files and compile them as needed', (options) ->
exec 'coffee -c -w js/*.coffee', (err,stdout, stderr) ->
console.log stdout
Run Code Online (Sandbox Code Playgroud)
另外,如果有更好的方法从cakefile调用coffeescript命令而不是运行'exec',请发布它.
与其他开发人员合作时,这个问题似乎一直在发生.我们有一个像这样的迁移创建的表(由postgres支持):
create_table :subscription_events do |t|
t.integer :subscriber_id
t.text :source_url
t.text :params
t.text :session
t.timestamps
end
Run Code Online (Sandbox Code Playgroud)
然后在运行rake db:migrate之后的未来看似随机的时间点,Rails想要更新schema.rb文件datetime而不是使用timestamp,导致整个create_table调用的另外令人困惑的重新注册:
create_table "subscription_events", :force => true do |t|
- t.integer "subscriber_id"
- t.text "source_url"
- t.text "params"
- t.text "session"
- t.timestamp "created_at", :limit => 6, :null => false
- t.timestamp "updated_at", :limit => 6, :null => false
+ t.integer "subscriber_id"
+ t.text "source_url"
+ t.text "params"
+ t.text "session"
+ t.datetime "created_at", :null => false
+ t.datetime "updated_at", :null …Run Code Online (Sandbox Code Playgroud) 当用户Facebook连接到我的网站时,我想将用户的Facebook好友列表范围缩小到那些已经注册我网站的用户.
所以我有两个清单
最有效的方法是对所有已注册的FB用户的UID执行单个查询并在代码中执行交集吗?
如果有更多像10,000名FB用户注册的话,那么最有效的方法是在30秒内无法通过查询检索到这些用户?
coffeescript ×2
activerecord ×1
api-design ×1
bash ×1
facebook ×1
models ×1
mongodb ×1
oauth-2.0 ×1
postgresql ×1
shell ×1