Giter VIP home page Giter VIP logo

rails10's Introduction

rails10's People

Contributors

happypeter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rails10's Issues

apt-get 一些包失败

sudo apt-get install -y git-core curl zlib1g-dev build-essential \
                     libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 \
                     libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common

文档链接给我一下
Leon 20:19:49
http://happypeter.github.io/rails10/02_getrails.html
happypeter 20:20:24
我自己跑一般试试,稍等
Leon 20:20:33
好的,麻烦老师了
happypeter 20:21:29
把你的报错信息贴一下吧
Leon 20:21:44
恩,我跑一下,稍等

active record

find_by(title: "Title") is now preferred over find_by_title("Title") in Rails4

ruby on rails 的网站怎么部署

ruby on rails 的网站怎么部署? 本机上调通了,如何找到便宜的服务器并做域名指向?haoqicat 是放在哪里的?

https://onemonthrails.com/

他们的课程定位较之 rails tutorial 更为简单,面向真正的 Beginner.

我比较喜欢的就是他们主页上极为清晰的市场定位。其实只有这个清楚了,课程才能真正有一个好的北极星。

我的 rails10 也要有一个清晰的定位。

课程总体风格

还是延续 html7 的风格,以实现功能为主线。
具体的点的讲解可以放到 “rails 巧克力” 之中。

第0周:课程介绍

适合观众:

  • 告诉大家对前端要有基本了解,如果完全不会直接上手 rails 会比较晕,可以看看 html7

开天词

强调 Rails 就是适合初学者的,

  • html/css/js/ruby 其实入门都只要几十分钟,但是如果不拿它们实际做东西,那学习就会走弯路

Rails 中充满了摩登开发者的工作流:

  • 关注 Programmer Happiness

route

https://laracasts.com/series/laravel-5-from-scratch/episodes/10

中专门讲了 resources

我的视频里我打算这样,就是一心想要把这个东西给做成。过程越简单越好,但是代码也不能太傻帽了。也就是说如果,有一个东西写了三四个了,几乎就凑成一个 resources 了,那就把这个概念搬出来。

注意,搬出新概念的目的要基于实用:

  • 要么可以让干活更快乐:有了 resources 干掉了一大堆代码,眼睛舒服了,当然 happy
  • 要么就是要做成不得不讲,form 不能不提啊。
  • 所以新的工具和概念或是规范好多都是在重构代码过程中逐步引入的

看来,我这里的思路就比较清晰了:

  • 就是以项目,一个代码简单的项目,的开发为主线
  • 概念引入绝对的服从动手
  • 控制难度,让大家听着不是太简单,也不是太难,每一分钟都学东西才是关键。

第x周:部署项目

告诉大家 production mode,asset precompile,这些事情
域名重定向,apache 设置...

范围不要过宽

html git 这些东西要 show, don't tell,不然这本书就得改成 rails100 了

课程项目开发

  • 参考 github issues 的简约风格。
  • 让项目有一定的通用性。
    • 把是”否身在北京“去掉,改为可以取消邮件订阅

turbo links 等一些高级功能放到最后,作为介绍性内容。

部署吗?

不讲部署,东西就不能真正实用,不 teasing

讲部署,那么事情就太多了,

rake assets:precompile

还有前面我用 vagrant 默认解决的那些 git/rails/ruby 的安装问题,这里不是还要都跑一遍?

中级课程保留内容

现在我一边开发 offline-happycasts 一边就安排那些内容可以在 rails10 中先不讲

中级课程叫 《 Rails 100 迈》,高级叫 《 Rails 千千阙歌 》

offline 项目中不写高级内容的代码。只有初级和中级的内容。

中级内容:

  • session 管理,current_user 是怎么来的, authentication ...
  • 复杂的 route 中级中最好也别讲
  • 打造常用 form 使用技巧集合

vagrant

使用 vagrant 的 provision 脚本还是不那么简单的,想要一键搞定一切,不那么容易:

  • 脚本本身就比较晦涩了,不是一个普通的 interactive shell 环境
  • vagrant 装好之后也要调调内存大小,所以一些步骤还是要手动做的

还是给出一个手动安装的命令列表吧,可以放在 rails10 源码树里,也可以放在视频文字稿中。

  • 优先放到文字稿中,
    • 安装了 ruby 后,给大家说说 ruby 是干嘛的
    • 装了 git 后就说说 git
    • 简单清晰是最好,新手不用求快
    • 但是要告诉大家,一切都可以自动化完成,参考 happycasts
    • 到 rails s 就行,不要 passenger&apache

典型观众

她:

  • 肯定是会一点 html&css 的
  • 有能力去看英文资料,所以你指给她的材料她有自学能力
  • 对 rails 的核心功能还是很不清晰,就像当时我自己一样。

静态页面

用写静态页面的方法来使用 font-awesome 并不太难 293f3c7350fa8b

  • 但是这个让你的源码变得很大
  • 升级维护起来就变的麻烦

这是展示 gem 的优势的一个例子

Rails 的翻转课程教学

  1. 十周课,每周时间一下午,其余时间学生看一章课本,配 5 集视频。
  2. 所以需要一本类似 railstutorial 这样的课本
  3. 使用 unix 但是力避 unix 的深入内容
    • ubuntu 安装要有一集
    • apt-get 可作为选学内容
  4. 单个视频要难度适中,比如我的 rails 安装视频,一下子抛给学生,大家盲点太多,就会很乱。所以每一集传达的信息量要控制。
  5. ruby 入门应有一期,配合 sinatra 写点小代码

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.