#34 楼 @279959599 我从那种日子彻底走出来,用了 5 年。
默默无闻的开发者有很多,当年 javaeye 非常热闹的时候,我根本不敢发什么帖子,完全是看客,几乎是找到自己要的答案,就关掉网页了。
薪水范围,看拉钩,http://www.lagou.com/jobs/list_rails
首先,rake db:reset
并不是重新建数据库,文档上的解释:
The rake db:setup
task will create the database, load the schema and initialize it with the seed data.
如果在开发的时候随手改写了 migration,reset 并不会使用最新的 schema,这时候需要重新的 db:drop db:create db:migrate。
在 win 上开发,建议用 Virtual box + vagrant,避免折腾开发环境,我公司开发组其他五个人都是用 win 开发 python,配合 vagrant 调试 rails。
has_one :content
accepts_nested_attributes_for :content, update_only: true
详见 accepts_nested_attributes_for api
可能是因为 controller 把它过滤掉了
params.require(:xxx).permit(:commenter, ....)
rails new -h
中给出了提示:
-d, [--database=DATABASE] # Preconfigure for selected database (options: mysql/oracle/postgresql/sqlite3/frontbase/ibm_db/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc)
所以,创建项目的时候,可以
rails new project -d mysql
rails new project -d sqlite3
你也是阿里云 centos 7,2G 内存么?你说的“加载”应该指的是 precompile 这个环节吧?我的解决是:升内存,这个问题也困扰我很久,之前我 2G 服务器跑的很好,是 centos 6,但是新服务器用了 7,就出现这个问题。
免费??
sidekiq 是要启动的。
开发环境启动
redis-server ./config/redis.conf
sidekiq -C config/sidekiq.yml -P ./tmp/pids/sidekiq.pid
不要因为访问 http://localhost:3000/sidekiq 能打开,就认为 sidekiq 已经启动了,NO!这只是 sinatra 启动了监控界面,你会看到一堆 Enqueued 的。
可以练练 rails 5
#3 楼 @aswong83 rails 的 link_to 方法,正常应该是 <%= link_to "name", url_path, data: { ... } %> ,你说的都是在 data 里面发生的。如果给 link_to 加上 remote:true,它产生的是一个 js 请求,对应的是 action.js.erb
模板。以上描述是正常情况下的。我怀疑是不是某些 lib,或者 gem 改变了这种约定,毕竟是 3.x 过来的,一些 3.x 的 gem 还没有移除。
至于在 a 里加了一个 link_to 属性,是不好的。要么是旧代码、旧方法没有移除,要么是设计思路不对。
ps:我好想有印象,一个 action 请求直接调用它的 partial 模板,而不是它本身,它本身留给其他方法调用。可能因为 2.x 升级 3.x,现在升级 4.x,细思极恐呀。
没太懂,建议看看 ujs 的内容,https://github.com/rails/jquery-ujs/wiki
我总结了一下 Rails 中的 REST,希望对你有点帮助:http://rails-practice.com/content/Chapter_2/2.2.html
如果有疑问的地方,我们探讨吧。
捂脸捂脸,不好意思总提自己的东西,请多指教。
1、区别很大。一个是数据库层面,比如,如果有 dba 直接往你数据库里任意插入记录,会破坏了你应用的数据完整。一个是你确保应用把数据正确的写入数据库。最好两个都要加上。
2、是的,建议你检查一下 sql,确保在两条 sql 内完成这件事。
3、我习惯在代码里避免它发生,不抓取这种异常。可能也不是个好方法吧。
4、https://github.com/RailsApps 有很多源码可供参考,我也写了一份,不知道合不合用 https://github.com/liwei78/rails-practice-code/tree/master/final
你需要用的是 嵌套路由,应该用 4 楼写法,但你的 form_for 用法不对,应该是:
<%= form_for [@group, @application] do |f| %>
使用 redis 存这种非关系型的数据。使用页面缓存显示这些记录。
当前的语言环境,教坏了一些人。
“妹子”一词可不可以用?现在的语言环境,可以用,少用。
“妹子”一词怎么来的?记得当时炒作一些日漫时,有用过“买你妹,x 你妹”这类词,后来迅速成为热词,有个段子:”你妹是个好姑娘,帮你妈分担了许多忧伤“。
就像”尼玛“被爆满炒作热词一样,“你妹”一次是炒作的成果。但是,北方人讲话很少用”三声“,而”尼玛“这种严重的双三声词,用东北话讲出来和骂人无异。你妹也是。
归根结底,当前网络上的语言环境教坏了一些人,让一些人困惑:我们该怎样说话才应和得了时下人的口味呢?
我们不会说话了么?
由 coding 那篇文引起“性别歧视”的论调,属于围观群众不明就里的起哄而已。
这事不用再开帖子大书特书了吧,哈,晚安。
敏感是因为社区近一年里,总是有这种调侃的回复,看多了的确让人厌烦。
参与这种活动,我个人的目的是向参与者学习,了解她们对哪些问题不是很了解,如何向她们讲解问题。Rails 开发毕竟是我的专职,我了解它的优势,我希望更多人了解。我喜欢分享,也愿意分享。
如果别人总是在说:“去这个活动好呀,有那么多妹子”,说一遍两遍无所谓,但是打开论坛,打开微信就是这些调调,的确让人讨厌。我们应该适可而止,调侃归调侃,莫当真,莫反复。
我们都喜欢干净的代码,同样,我们都应该喜欢干净的论坛。是吧。
补:
我觉得事情到这里可以结束了,coding 的影响有人会去督促解决,我们没必要反复开帖子,顶帖子。回归活动本身吧。
我不是组织者,我只是个普通的教练,七个城市的教练工作我都会参加,说说我的感受吧。
首先:这是一场公益活动。参加者是免费的,场地费和午餐费用是赞助商出的,教练是志愿者,我们的主旨是让参与的人了解 Rails,使用 Rails。
然后:我们并不是随便开话题来讲的,我们是要按照 Guide 来一步步让学员了解从安装到运行的各个细节的。我们都知道用 Rails 可以很快的看到作品,学员也是,在完成每一个步骤后会看到自己的成果。昨天在帮助几个学员搭建运行环境,成功之后每个人都很开心。
想想我们第一次运行
rails s
的心情吧。
我想,不是每个人未来都会成为 Rails 程序员,但是有的人会的。
最后:至于说歧视,我一直没想明白,是不是只有我是歌手才是公平的,而早年的超女,超男,现在的奔兄,爸爸,花姐都涉嫌性别歧视乜。Rails Girls 是 Rails 的推广活动之一,如果非要说歧视,那在 Rubyconf 上讲讲 php 吧。
好啦。周末可以做什么呢?可以在家陪父母,可以出门逛街看电影旅游,深圳的活动开始了,一群女孩子和编程教练在炎热的周末学习 Rails 编程,我看到的是正能量,祝各位周末愉快。
补:下周我在上海活动现场。
写软文,别让“X 丝”做你写作时内心里的第一阅读对象,吐槽不是目的,也别把吐槽当创作。 事情过去啦,该删的删,该改的改,周末愉快。
发猴子??
校验方法中的选项
在检验方法 validates 中,可以使用几个选项:
选项 | 含义 | 例子 |
---|---|---|
allow_nil | 是否允许为 nil | validates :size, allow_nil: true |
allow_blank | 是否允许为 blank?,为 false 时,不可填写 "", false, nil | validates :title, allow_blank: true |
message | 自定义错误信息 | validates :subdomain, exclusion: { in: %w(www us ca jp), message: "%{value} 为保留关键词" } |
on | 选择在 create 或 update 上使用校验 | validates :email, uniqueness: true, on: :create |
strict | 校验失败时抛出异常,或自定异常类 | validates :name, presence: { strict: true } [1] |