去于谦祠附近的农家喝茶晒太阳写程序也不错的
我也遇到这个问题,临时解决方案:
# lock paperclip and cocaine version
# to avoid bugs on UTF8 filenames
gem 'paperclip', '= 3.1.2'
gem 'cocaine', '= 0.3.2'
太假了,YY 得厉害
很贵,但是……已经……买了……
看看是不是这个原因: form 里面不能嵌套 form,否则里面那个 form 就会被浏览器忽略掉,于是 submit 按钮就导致表单提交了 用 chrome 或者 firebug 看一下 HTML 树结构就知道了
最近看到这篇文章,觉得很有道理 http://words.steveklabnik.com/rails-has-two-default-stacks
rails 有两套 stack:37Signal Stack 和 Prime Stack 如果一开始入门就用 Prime Stack,确实会遇到很多很多坑,入门难 可以先用 erb 把 rails 跑起来,然后尝试各种组件
btw. class
、id
属性在 slim 可以简化
require 'find'
require 'active_support/core_ext'
files = Find.find('.').select {|f| File.ctime(f).today? }
抛砖引玉~
@jasl 谢了,今天就用 backup 试试~
我有个数据超过 20G 的应用,主要是用户上传的 assets,不知有没有比较好的备份策略?
ruby 入门和 rails 入门差别很大吧,rails 涉及太多 web 开发的沉淀、约定了,顺带出 n 多的 gem。一个坑里面 n 个萝卜,越挖越深。很难短时间入门。Ruby 怎么入门, @chenge 同学总结得很到位啊
可能是 HTTP 的 content-length 计算有错误,不兼容中文? 以前 nodejs 遇到过一些库有类似问题
对你说的最好用的 Markdown 编辑器非常感兴趣,学习一下:)
有些用 js 做的跳转(window.open,location.href=),不同浏览器表现不一样,也可能会为空
vim + instant markdown
我想 Ruby2.0 的Module#prepend
是个很简单优雅的 AOP 方案
http://dev.af83.com/2012/10/19/ruby-2-0-module-prepend.html
想法是:
尝试写了一下
# encoding: utf-8
require 'active_support/core_ext'
class Whatever
attr_accessor :start_time
def update_start_time
self.start_time ||= start_of(DateTime.current)[:end]
end
def start_of(t=DateTime.current)
groups = [{
desc: '11:30-13:00',
start: t.change(hour:11, min:30, sec:0),
end: t.change(hour:13, min:0, sec:0)
},{
desc: '17:30-18:30',
start: t.change(hour:17, min:30, sec:0),
end: t.change(hour:18, min:30, sec:0)
}, {
desc: '21:30-08:30',
start: t.change(hour:21, min:30, sec:0),
end: t.change(hour:8, min:30, sec:0).tomorrow
}, {
desc: '21:30-08:30',
start: t.beginning_of_day,
end: t.change(hour:8, min:30, sec:0)
}]
grp = groups.find do |grp|
t >= grp[:start] && t < grp[:end]
end
grp ||= { desc: '工作时段', start: t, end: t }
end
end
if __FILE__ == $0
require 'test/unit'
Time.current..Time.current
class StartTimeTest < Test::Unit::TestCase
def setup
@obj = Whatever.new
end
def test_groups
assert_equal '11:30-13:00', @obj.start_of(today(hour: 11, min:40))[:desc]
assert_equal '17:30-18:30', @obj.start_of(today(hour: 17, min:40))[:desc]
assert_equal '21:30-08:30', @obj.start_of(today(hour: 21, min:40))[:desc]
assert_equal '21:30-08:30', @obj.start_of(today(hour: 04, min:40))[:desc]
end
def test_edge
assert_equal '11:30-13:00', @obj.start_of(today(hour: 11, min:30, sec:0))[:desc]
assert_equal '工作时段', @obj.start_of(today(hour: 13, min:0, sec:0))[:desc]
end
def test_normal
assert_equal '工作时段', @obj.start_of(today(hour: 14, min:0, sec:0))[:desc]
assert_equal '工作时段', @obj.start_of(today(hour: 19, min:0, sec:0))[:desc]
end
private
def today(opt)
DateTime.current.change(opt)
end
end
end
前端还可以,rails 没有那么自信,不过也不少项目经验,内部转岗,接受么?。。 ps. 所有要求的条件都满足甚至溢出
qhwa#163.com 谢谢!
CBU 如彼(花名还在审核,没错,就是 ruby,哈哈)
#6 楼 @henry_huangs 3 楼 @5long 说的对,估计你本地索引过期了,需要 apt-get update
一下
gem install mysql2
Downloading http://rubygems.org/latest_specs.4.8.gz File already downloaded and cached to /usr/share/ruby-rvm/gems/ruby-1.9.2-p318/cache Downloading http://rubygems.org/quick/Marshal.4.8/mysql2-0.3.11.gemspec.rz ######################################################################## 100.0% Downloading http://rubygems.org/gems/mysql2-0.3.11.gem ######################################################################## 100.0% Building native extensions. This could take a while... Successfully installed mysql2-0.3.11 1 gem installed Installing ri documentation for mysql2-0.3.11... Installing RDoc documentation for mysql2-0.3.11...
然后就装上 mysql2 gem 了
我试了一下用 163 的源是可以的……
sudo apt-get install libmysqlclient-dev
正在读取软件包列表... 完成 正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了: libportaudiocpp0 使用'apt-get autoremove'来卸载它们 下列【新】软件包将被安装: libmysqlclient-dev 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。 需要下载 1,393 kB 的软件包。 解压缩后会消耗掉 5,621 kB 的额外空间。 获取:1 http://mirrors.163.com/ubuntu/ precise-updates/main libmysqlclient-dev amd64 5.5.28-0ubuntu0.12.04.2 [1,393 kB] 下载 1,393 kB,耗时 0 秒 (1,868 kB/s)
Selecting previously unselected package libmysqlclient-dev. (正在读取数据库 ... 系统当前共安装有 434385 个文件和目录。) 正在解压缩 libmysqlclient-dev (从 .../libmysqlclient-dev_5.5.28-0ubuntu0.12.04.2_amd64.deb) ... 正在处理用于 man-db 的触发器... 正在设置 libmysqlclient-dev (5.5.28-0ubuntu0.12.04.2) ...
一定要 5.5.24 吗?
说到 web 旺旺,我是参与开发前端的 web socket 组件,后端是用 Java 做的,只晓得我们的后端架构师非常给力,颠覆了我原先对一台服务器最大连接数的概念……
#5 楼 @yedingding 是的,自己写个 ruby 的 socket server,也可以达到目标的。 确实 long polling 大部分情况都可以作为不错的 fallback,如果不是对双向通信要求很高的应用,比如炒股软件啥的