#4 楼 @tonytonyjan 本身这种 precompile 的方式就决定了没法按需加载。
如果能做到 require 的 application.js 可以根据页面不同加载不同的话就行了。问题是做不到.( 或者说我不知道有什么办法。
在前端领域近期也有非常多的这样的尝试。让我觉得 asset-pipeline ( sprocket 也许不是问题的最终答案。
理解你这个需求。解决的话需要用到前端的 js 动态加载。
可以看看 requirejs, headjs, yepnopejs 之类的前端模块加载工具。
nuwa git:master ❯ git df 1620f36..33c957a --name-status
D assets/images/text-icon.png
A assets/images/wenzi.png
D assets/javascripts/add.js
M assets/javascripts/app.js
M assets/javascripts/design.js
M assets/javascripts/page.js
M assets/javascripts/reboot.js
D assets/javascripts/utils.js
M assets/stylesheets/app.css
D public/data/add_component_index_model.json
M public/index.html
D public/templates/add-component-index.html
M readme.md
D vendor/assets/javascripts/handlebars.js
FIT 是可以的。之前使用过。可以记录每个窗口的 Session.
很大一部分原因是因为:用过就回不去了。
用过 Ruby 之后,就很难有心情再去写 Java 代码。
用过 OS X 之后,就回不去 Linux 的桌面了。( 曾经的 Arch 粉,折腾 gnome kde openbox awesome xfce 折腾的心力交瘁..
Omnisweeper for Mac
如果在 rails 环境下,贡献一个更丑的方式:
1.9.3p194 :001 > data = {a: 1, b:2}
=> {:a=>1, :b=>2}
1.9.3p194 :002 > data.try(:[], :a)
=> 1
1.9.3p194 :003 > data.try(:[], :c)
=> nil
cool! Russo One 字体亮了!
做企业级编程的人不认可 Ruby 的很大一部分原因就是,语法太灵活,写法不统一。
太灵活的东西就会让他们觉得控制不了,一控制不了就去用 Java 了。
尘归尘,土归土。爱写什么就写什么吧。. 选择自己喜欢的写。
如果整个世界只有楷书,还怎么彰显书法家的个性..
Fork 的代码不要在 master 上做修改。
贡献代码直接开新的 branch. 最终 PR 回去就好了。
这样每次都可以:
git co master
git pull upstream master
git co -b new_branch
# send new PR
最近在折腾 Gitlab 的 Git HTTP 支持,发现 unicorn 真的很好。
passanger 会将 http basic auth 的信息拦截掉。导致后端没法正常验证。这个有人报过 issue 了。我只能让它换到非 passanger 环境下。
其他的 thin unicorn puma. 我最近看过代码。关于 tempfile 的实现上面。unicorn 也是最好的。puma 里面的代码真的很取巧。
#17 楼 @quakewang https://github.com/macournoyer/thin/issues/126 给 Thin 提了一个 issue. 等待有人回复。
nginx 的 worker 进程不是 root 启动的。所以没有权限访问 unicorn 的 gitlab 用户。
在 /etc/nginx/nginx.conf 文件顶上加上 user 声明,然后重启就好了。
user root admin;
#13 楼 @quakewang Puma 的 NullIO 的 read 是这样实现的:
# Mimics IO#read with no data
#
def read(count=nil,buffer=nil)
(count && count > 0) ? nil : ""
end
Thin 用的是 StringIO. 但是它没往里面写入。
只有 unicorn 实现了真正的 read.
def read(*args)
@socket ? tee(super) : @tmp.read(*args)
end
nohup
or -d
有 ops 专区么?我们一起研究一下 chef 吧.. 这些工具我都评估过了。
感觉 chef 最好。
你多虑了,中午那阵就挂了..
责任不在你..