Rails can't use byebug without Readline解决方案
在网上找了半天这个问题,各种千奇百怪的方法,可是就是没搞定,最后搞定的倒是挺容易的:
gem 'rb-readline'
最后加一句这个,针对缺少execjs/therubyracer,可以加上:
gem 'execjs'
gem 'therubyracer'
在网上找了半天这个问题,各种千奇百怪的方法,可是就是没搞定,最后搞定的倒是挺容易的:
gem 'rb-readline'
最后加一句这个,针对缺少execjs/therubyracer,可以加上:
gem 'execjs'
gem 'therubyracer'
那道卡了一个学期的生产者消费者问题,今夏开工,和小新讨论了半天怎么怎么折腾,然后踩到了不少坑。
需要用到Java+Rails+JavaScript,题目要求,不得不用。Java用于生产者消费者模型,剩下的用于前端显示。
最初的设计是轮询,换句话说,类似于Java写入数据库,然后刷新定时刷新读写,一遍遍去查找更新,这样当然是可行的,但是——好Low。
现在我们有了一个更好的解决方案,用WebSocket实现动态的、即时的更新。当然当初知识一个小想法,WebSockeet对我还很抽象,所以咨询了一下用过的小伙伴小新,得知差不多一个意思,查了各种资料,开工。
WebSocket的原理性介绍:https://github.com/abbshr/abbshr.github.io/issues/22
简单的来说是在运输层用TCP来进行通讯,而不是用HTTP协议,这很好理解嘛,跟Socket差不多一个意思(本来以为这辈子都不会用Socket因为不搞桌面开发)。
分几篇写太麻烦了,这是Rails+AngularJS坑中的最后一篇,我们讲讲Rails中的Session以及AngularJS中的Promise。
Rails+AngularJS自己折腾是因为教程写的又臭又长,而且不是中文,我在想,我只是把Rails当做一个Api,是不是根本用不着那么多麻烦,不就是传个json出来么?
Yes,That's right.
我们来回忆一下:Rails 实现用户登录存取Session思路总结当时篇尾戏剧性的变化,这次看的是http://guides.ruby-china.org,效果好很多,需要什么直接去查。
因为网上的教程字数太多,而且都是英文的(没错这才是重点)。想要前后端完全分离的我完全懒得考虑这么多,就自己开始折腾能不能很轻松的完全只是用Control和Model而不管View,不引入gem,现在简单的小demo终于成功了。
Rails的初始准备见:Rails 处理跨站请求
准备完这个,接下来我们就只要管Control怎么写就行了。
首先来尝试一下get,最简单。
def index
json_str = {"xx" => "hello"}.to_json
render :json=>json_str, status=>'200'
end
AnguarlJS中的方法虽然可以直接进行jsonp跨域请求,不用像jQuery那样包装jsonp,不过依旧需要后端开启跨域,否则仍旧没办法数据交互:
已阻止跨源请求:同源策略禁止读取位于 http://localhost:3000/create 的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')。
这两天属于北京填鸭式的给自己灌输了一堆Rails的知识,其实心挺累的,最后几乎看不进去了……
首先先说明,当Rails创建Controller\Model之类的同时,他会创建一堆方法!!!
首先先说明,当Rails创建Controller\Model之类的同时,他会创建一堆方法!!!
首先先说明,当Rails创建Controller\Model之类的同时,他会创建一堆方法!!!
因为很重要所以要说三遍。
这里也就是草稿的集合,具体请查询相关教程手册。
《Ruby On Rails Tutorial 中文版》中的第八章,把思路总结了一下,大概是Session构建的9个过程:
执行:rails generate controller Sessions
,同时会创建一个Helper,之后我们会反复使用
在routes.rb中追加:resources :sessions, only: [:new, :create, :destroy]
追加完毕之后,我们还需要写一下match:
match '/signin', to: 'sessions#new', via: 'get'
match '/signout', to: 'sessions#destroy', via: 'delete'