在构建网站时(为了清晰起见,只有HTML/JS网站)我使用gulp编译并连接一些文件然后放在一个build/文件夹中.
文件夹结构如下所示:
??? assets
? ??? images
? ??? javascripts
? ? ??? app.js
? ??? stylesheets
? ??? style.scss
??? bower.json
??? build
? ??? bower_components
? ??? images
? ??? index.html
? ??? scripts.min.js
? ??? styles.min.css
??? gulpfile.js
??? index.html
??? node_modules
? ??? gulp-module-1
? ??? gulp-module-2
??? package.json
??? README
Run Code Online (Sandbox Code Playgroud)
如果我在git仓库中包含所有这些文件,我的所有更改都将提交两次.那就是:改变assets/stylesheets/style.scss也会导致改变build/styles.min.css.但是,如果我决定build/从存储库中排除该文件夹,您将需要生产服务器上的某些开发工具(即gulp,npm等).当生产服务器上的权限有限时,这有时会很困难.显然排除assets/文件夹不是一个选项,因为您将丢失已编译文件的源.
因此,我的问题是:在生产服务器上部署此功能被认为是最佳做法?您是否build/在repo中包含文件夹,是build/在生产服务器上编译文件夹还是第三个解决方案?
对于一个项目,我需要解析一些日期字符串.给出一个日期,即一周的星期一,例如:2015年2月16日.
然后,我设法提取了一个如下所示的日期列表:
['Wednesday', '11:00AM', '7:00PM']
['Friday', '10:15AM', '4:30PM']
['Sunday', '12:00AM', '5:00PM']
Run Code Online (Sandbox Code Playgroud)
第一个值显然是第一天,第二个值是开始时间,最后一个值是结束时间(它是事件的结束时间).
我想将它转换为实际的python datetime对象,但它必须与开始日期一致.
我到目前为止尝试使用的是:
# Beginning of week
BoW = datetime.strptime('Feb 16, 2015', "%b %d, %Y")
# List of days
for day in days:
# Find the Day of the Week
# This outputs a number, 0 = Monday, 6 = Sunday
DoW = table.index(tr)
schedule.append({
'start' : BoW + timedelta(days=DoW),
'end' : BoW + timedelta(days=DoW)
})
Run Code Online (Sandbox Code Playgroud)
如您所见,这只会成功设置日期,而不是小时/分钟.有没有办法轻松实现这一目标?
我只是熟悉Mongodb,这就是为什么我做了一些愚蠢的事情.我的每个数据集的条目都包含一个时间戳(它们是推文).我没有在插入之前将时间戳从字符串转换为实际的日期格式,而是将其简单地插入为字符串.
现在,我的数据集变得越来越庞大(超过300万条推文),我想开始对我的条目进行排序/测距.由于我的时间戳仍然是一个字符串("Wed Apr 29 09:52:22 +0000 2015"),我想将其转换为日期格式.
我在这个答案中找到了以下代码: 如何将MongoDB中的属性从文本转换为日期类型?
> var cursor = db.ClockTime.find()
> while (cursor.hasNext()) {
... var doc = cursor.next();
... db.ClockTime.update({_id : doc._id}, {$set : {ClockInTime : new Date(doc.ClockInTime)}})
... }
Run Code Online (Sandbox Code Playgroud)
而且效果很好.然而,它非常缓慢.根据MongoHub应用程序,它每秒只处理4个查询.使用300多万条推文的数据集,转换大约需要8.6天.我真的希望有一种方法可以加快速度,因为我的截止日期是8天:P
有什么想法吗?
所以我知道这里有几十个帖子描述了如何对多维对象进行排序,但我找不到符合我需求的帖子.
所有这些解决方案都基于这样的对象:
[{id: 1, value: 'aaa'},{id: 40, value: 'bbbb'}]
我的对象看起来像这样:
buttons: {
confirm: {
class: 'btn btn-primary',
value: 'Opslaan',
order: 1
},
cancel: {
class: 'btn btn-default',
value: 'Annuleer',
order: 10
}
delete: {
class: 'btn btn-danger',
value: 'Verwijder',
order: 2
}
},
Run Code Online (Sandbox Code Playgroud)
当然,我想对此进行排序,以便结果是:确认,删除,取消.我试过这个(我预计不会工作):
this.options.buttons.sort ( function ( a, b ) {
return a.order - b.order;
});
Run Code Online (Sandbox Code Playgroud)
但那给了我一个 Uncaught TypeError: undefined is not a function
任何帮助深表感谢!