赵龙 全栈之路

报错集 042 终端新建文件时,文件名多出一个“.”

| Comments

错误记录

“Rails 101” 教材:4-3 实作讨论群“浏览”功能,Step 2: 加入 app/views/groups/show.html.erb,网页检测时出现红色报错:

分析与解决方式

检查发现,终端新建 app/views/groups/show.html.erb 文件时,代码出现标点符号错误,删掉错误的文件,重新建立文件就搞定了。

感悟

编程的世界,一个标点符号的错误都不能有。

全栈日记 70 2017-09-12

| Comments

Objective

关于今天的学习与工作,记得什么?完成什么?

完成 “rails 101教程” 的练习。


Reflective

如何形容今天的情绪,今天的高峰与低点什么?

代码的世界更让人喜欢,因为简单直接。

高峰:
  • 完成 “rails 101教程” 练习的时候,一股满足感升起。
低点:
  • 被迫跟思想上的懒人交流时,很无奈。

Interpretive

今天的重要领悟是什么?

感悟:
  • 懒得学习的人,是难以交流的。因为他们已经放弃成长了。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

完成了昨日目标,好开心。

明天:
  • 制作个人 “rails 101教程” 的升级版。

全栈日记 69 2017-09-11 技能知识的本质是专业化的思维方式

| Comments

Objective

关于今天的学习与工作,记得什么?完成什么?

继续练习 “rails 101”教程。


Reflective

如何形容今天的情绪,今天的高峰与低点什么?

敲代码让我内心平静下来了。

高峰:
  • 发现敲代码的手感一步步回来了。
  • 昨天晚上,安装的 Atom 插件使用效果不错,磨刀不误砍柴工。
低点:
  • 在 “报错集 040” 这个简单 bug 上,我浪费了大量时间,耽误了 “rails 101教程” 的练习进度。

Interpretive

今天的重要领悟是什么?

  • 专业知识,更准确的说掌握职业技能知识的学习,本质上是形成特定的思维方式,在认知科学的有一个专有名词“心理表征”描述这一事实。每个行业精英对同一事物的看法与观察角度都是不同的,就是该行业的“心理表征造成的。每个人可以拥有无数的“心理表征”,他拥有的所有“心理表征”的总和,形成了他的认知。不同人的认知有明显的高低之分,可以通过他的个人收入简单直接的判断。认知是为了生存,你的收入直接表明你的生存能力的强弱。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

在敲代码的过程中,我的内心平静了。

明天:
  • 赶紧完成“rails 101教程”的练习。
  • Atom安装代码语法检查插件。

报错集 041 出现代码语法错误,发现需要Atom代码语法检查插件

| Comments

错误记录

“Rails 101” 教材:7-5 实际操作“加入群组”或“退出群组”,Step 3 加入两行代码,网页检测出现如下红色报错:

分析与解决方式

用谷歌网页翻译,提示出现语法错误,使用代码对比工具,发现了出错的地方,如截图所示:

感悟

Atom还是安装上代码语法检查插件吧,这样能避免一些不必要的语法错误。

报错集 040 rails 101练习中,model中的group.rb关于post的一个小失误

| Comments

错误记录

“Rails 101” 教材:6-3 实际发表文章,Step 5: 对 Post 加上 validation,进行检测时,发现无法正常浏览群组,出现如下报错。

分析与解决方式

6-2 建立文章的架构,Step 2. 建立 Group / Post / User 三者间的关系, app/models/group.rb 文件中出现下图错误:

感悟

自己检查不仔细,还是疏忽大意了。

全栈日记 68 2017-09-10 自律与他律

| Comments

Objective

关于今天的学习与工作,记得什么?完成什么?

练习“rails 101教程”

  • 坐享半小时。
  • “微信公众号.千古刘传” 的关于自理的文章给我很大的启发。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

敲代码的感觉真好。

高峰:
  • 练习“rails 101教程”,大脑开始兴奋起来了。
  • 屏幕上的代码,在心中不断闪过其中的含义与作用。
低点:
  • 思考是否要一个人住更好。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
  • 自率的关键——自我限制。有限的自由才能带来自律,自律与他律并无太大区别,同样都是通过限制条件提高效率,他律是通过外在限制实现,自律是通过自我限制实现。大多数人更适合他律,因为自律的要求其实很高,会消耗大量的意志力,这也就是许多自由职业者希望重返职场的重要原因。
感悟:
  • 保持距离是良好人际关系的关键,家人易互相伤害就是违背了这条基本公理。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

寻找自己的节奏。

明天:
  • 明天搞定“rails 101教程”的练习。

全栈日记 67 2017-09-09 抓紧时间学编程

| Comments

2017-09-09 (周六) 晴 石家庄

Objective

关于今天的学习与工作,记得什么?完成什么?

  • 重新开始编程练习,尽快掌握编程技能。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

发觉自己的浪费了2个月的编程学习时间,心痛啊。

高峰:
  • 再一次打开电脑,练习“rails 101教程”时,自己开始兴奋起来了。
低点:
  • 晚上吃素,饿的快,血糖低。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
  • 知识固化为大脑肌肉记忆,才是真正的掌握。
感悟:
  • 发觉为了做课程耽误了编程太不值得了,赶紧将落下的课程补上。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

重新开始编程,给自己最多2周的时间,将生疏的部分找回来。

明天:
  • 继续“rails 101教程”的恢复练习。

魔改大赛复盘心得

| Comments

猎人学院

我与队友彭皓都是上班族,在每天的工作之余,挤出时间做出了我们的作品——猎人学院。

在此,特别感谢我的队友彭皓对于我支持与包容,在比赛的后期提醒我注意力放在成长上而不是比较上,让我重新找回了比赛的节奏。对了,惊喜彩蛋在本文的最后。

魔改大赛的两最一坑

最好的工具:

从 xdite 老师无意透露出的 9 宫格思维法,在写作、文案、规划的效果很惊人。以这次的魔改大赛复盘文为例,在示例图片的中心格子写下文章的核心主题,围绕这个核心主题按顺序写出 8 个要点。观察全栈营小伙伴中你认为写的不错的魔改大赛复盘文,待会写作的时候直接套用,将 8 个要点按照自己需要的顺序写出就 ok 了。9 宫格思维法不仅能用在写作上,还能用在商业计划书、个人半年规划、学习路线规划等等。太多地方能用到了,推荐大家配合 xdite 老师发明的 16格读书法,效果更棒。

最好的概念:

9 宫格思维法的背后的概念——聚焦!

普通人写作的时候是顺序写的,很容易出现偏离核心主题的情况,9 宫格思维法让核心主题处于一眼就能看到的位置,写的每一个要点都跟主题相关而不是偏离,最后套用受欢迎的模板按自己喜欢的顺序写出总结的要点,背后的原理就这么简单。

16 格读书法背后的概念也是聚焦,只是聚焦的方式不一样。这两种方法各有适用的场合,配合使用效果更棒。例如,使用 16 格读书法提取出需要写作文章的核心主题,在使用 9 宫格思维法将文章整体框架确定下来,写作就简单了。

我踩的最大的坑:

我高估了自己的能力,在魔改大赛期间,白天工作,下班后不仅参与魔改大赛,还继续准备自己的原创知识付费课程《心流学习法》。同时执行冲突的多个核心任务,最后都没有取得最好的成果。虽然,我在一块听听平台取得了主讲人资格,并进行了一次小规模的分享直播。但是这件事完全可以在魔改大赛结束后进行,同时能做的更好。魔改大赛更是如此,因为没有尽全力参加比赛,最后也没有拿到自己想要的排名。

总结起来就一句话:不要同时进行互相冲突的核心任务。

魔改总结

魔改大赛要提前做准备,很多同学是在 Job-Listing 大赛还没有结束的时候,就找到了队友。而我则是后知后觉的在 Job-Listing 大赛结束后才找到队友,在时间上比提前行动的队伍落后至少了 5天,在时间就是生命的比赛中,这5天天时间太宝贵了。不管是协作练习,收集图片素材,提前找前端功能代码片段,后端功能教程等等,都太有用了。

我与队友彭皓确定好组队比赛后,就抓紧时间练习购物网站教材。我对自己更狠一些,每天早上4点多起床敲代码到不得不上班的时候,晚上7点前就回到家,敲代码都晚上10点半左右。这样的狠劲让我不仅购物网站练习了两遍,本人原创的《心流学习法》框架在比赛前基本确定了下来。但是在这个过程中,我踩了之前所说的 “同时进行互相冲突的核心任务” 这个大坑,事倍功半说的就是我当时的情况,到了比赛后期。我刻意用自己总结出的各种心流技巧透支脑力与体力比赛的后遗症出现了,身体开始发出警告,“猎人学院” 的迭代也受到了影响。

比赛过程中陷入了拉票的比较中,在看到其他选手的票数比我高的时候,在作品完成度并不高的情况下,进行了拉票,最后的结果是效果很一般,甚至可以说是差。在几次低效拉票后,我将注意力放在了作品迭代上,“猎人学院”的完成度才迅速提高,但是比赛初期的心态失衡的举动带来的拉票行为,错失了许多人一开始最容易投出几张好感票。影响了比赛的排名。

user story 没有做好,这是最大的问题。“猎人学院” 是我 “知识猎人公会” 的系列作品之一。但是,我与彭皓没有在比赛一开始就将 user story 明确的定下来,只是写出了一个基本框架,造成的结果是想到哪里就做哪里,效率低效,这也是 “猎人学院” 初期迭代缓慢的重要原因。

user story 很重要!user story 很重要!user story 很重要!重要的事情说三遍,在比赛开始前就必须确定好 user story ,不然就会出现迭代缓慢,甚至迭代停止的情况。

魔改 零散知识点记录

| Comments

导航栏中的标签链接

welcome.html
<li>
<a href="/products?category=课程" style="<%= if !params[:where].blank? && params[:where]=="课程" then "color:#B28435;" end%>">课程</a>
//更好代码category=课程",导向的链接就更改
</li>

本地专案情况建立的数据数据

终端执行 Group.delete_all

本地专案 heroku 预编译

1、在push到heroku之前要提前处理一下sqlite3这个gem。具体的内容教材也有详细的解说:
Heroku部署详解
2、正常情况下,上面的问题解决了以后,push到heroku一般不会出问题,但是如果他一直提示各种问题:
比如:

  • 本地没有gemfile文件
  • 调整了sqlite3的位置,并且也加了group:production do,还是报错这边有问题

这些问题具体比较复杂可以自行google是什么原因。

但是解决起来的方法就是很简单粗暴:

首先看一下专案有没有和heroku对应,用命令:git remote -v

如果有对应,直接删除专案和heroku之间的链接关系。用命令:git remote rm heroku

删除以后,在新建一个heroku(5个以内免费,去heroku网站里手动删除多余的,任意新建,nic老师说:反正不用钱)。
然后你再push 基本解决你80%的问题。

3、如果成功的push上去,发现heroku网站的页面有bug,而本地是完美的,这时候就要执行一条“预编译”的命令了
rake assets precompile【意思是提前把你的专案重新编译,从而适应heroku】

然后再 git add .git commit -m "xxxx"

然后你就会发现完美的网站出现了。

google 搜索到这条终端指令 heroku run rake assets precompile ,还没有搞清楚具体的含义与用法

自学 git常用代码

| Comments

1、回退到上一个git commit版本
终端执行 git reset --hard HEAD~1 ,最后的整数代表回退几步。

2、终端执行 rake routes ,可以看所有 Views 生成的路径

3、删除 git 分支
终端执行 git branch -D v7 其中 v7 替换为删除分支名称

Git 指令
以下只列出较常使用的指令:
git add 将此次变更的档案添加至缓冲区
git commit 将已经加入缓冲区的档案提交至工作区
git push 发送至远程仓库
git pull 从远程仓库更新本地端
git checkout 切换分支
git branch 针对分支进行行为操错(删除、重新命名)
git clone 克隆该专案所有的代码
git remote add repo_url (repo_url 需自行替换) 为专案新增连接到一个remote repository
git remote -v
git merge: 将分支 Branch 合进另一支分支
git rebase: 将 git worktree 重新定义基准点

1) 远程仓库相关命令
检出仓库:$ git clone git://github.com/jquery/jquery.git
查看远程仓库:$ git remote -v
添加远程仓库:$ git remote add [name] [url]
删除远程仓库:$ git remote rm [name]
修改远程仓库:$ git remote set-url --push [name] [newUrl]
拉取远程仓库:$ git pull [remoteName] [localBranchName]
推送远程仓库:$ git push [remoteName] [localBranchName]

*如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,如下:
$git push origin test:master // 提交本地test分支作为远程的master分支
$git push origin test:test // 提交本地test分支作为远程的test分支

2)分支(branch)操作相关命令
查看本地分支:$ git branch
查看远程分支:$ git branch -r
创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支
切换分支:$ git checkout [name]
创建新分支并立即切换到新分支:$ git checkout -b [name]
删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项
合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并
创建远程分支(本地分支push到远程):$ git push origin [name]
删除远程分支:$ git push origin :heads/[name] 或 $ gitpush origin :[name]

*创建空的分支:(执行命令之前记得先提交你当前分支的修改,否则会被强制删干净没得后悔)
$git symbolic-ref HEAD refs/heads/[name]
$rm .git/index
$git clean -fdx

3)版本(tag)操作相关命令
查看版本:$ git tag
创建版本:$ git tag [name]
删除版本:$ git tag -d [name]
查看远程版本:$ git tag -r
创建远程版本(本地版本push到远程):$ git push origin [name]
删除远程版本:$ git push origin :refs/tags/[name]
合并远程仓库的tag到本地:$ git pull origin --tags
上传本地tag到远程仓库:$ git push origin --tags
创建带注释的tag:$ git tag -a [name] -m 'yourMessage'

4) 子模块(submodule)相关操作命令
添加子模块:$ git submodule add [url] [path]
如:$git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs
初始化子模块:$ git submodule init ----只在首次检出仓库时运行一次就行
更新子模块:$ git submodule update ----每次更新或切换分支后都需要运行一下
删除子模块:(分4步走哦)
1) $ git rm --cached [path]
2) 编辑“.gitmodules”文件,将子模块的相关配置节点删除掉
3) 编辑“ .git/config”文件,将子模块的相关配置节点删除掉
4) 手动删除子模块残留的目录

5)忽略一些文件、文件夹不提交
在仓库根目录下创建名称为“.gitignore”的文件,写入不需要的文件夹名或文件,每个元素占一行即可,如
target
bin
*.db

git init # 初始化本地git仓库(创建新仓库)
git config --global user.name "xxx" # 配置用户名
git config --global user.email "xxx@xxx.com" # 配置邮件
git config --global color.ui true # git status等命令自动着色
git config --global color.status auto
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto
git config --global --unset http.proxy # remove proxy configuration on git
git clone git+ssh://git@192.168.53.168/VT.git # clone远程仓库
git status # 查看当前版本状态(是否修改)
git add xyz # 添加xyz文件至index
git add . # 增加当前子目录下所有更改过的文件至index
git commit -m 'xxx' # 提交
git commit --amend -m 'xxx' # 合并上一次提交(用于反复修改)
git commit -am 'xxx' # 将add和commit合为一步
git rm xxx # 删除index中的文件
git rm -r * # 递归删除
git log # 显示提交日志
git log -1 # 显示1行日志 -n为n行
git log -5
git log --stat # 显示提交日志及相关变动文件
git log -p -m
git show dfb02e6e4f2f7b573337763e5c0013802e392818 # 显示某个提交的详细内容
git show dfb02 # 可只用commitid的前几位
git show HEAD # 显示HEAD提交日志
git show HEAD^ # 显示HEAD的父(上一个版本)的提交日志 ^^为上两个版本 ^5为上5个版本
git tag # 显示已存在的tag
git tag -a v2.0 -m 'xxx' # 增加v2.0的tag
git show v2.0 # 显示v2.0的日志及详细内容
git log v2.0 # 显示v2.0的日志
git diff # 显示所有未添加至index的变更
git diff --cached # 显示所有已添加index但还未commit的变更
git diff HEAD^ # 比较与上一个版本的差异
git diff HEAD -- ./lib # 比较与HEAD版本lib目录的差异
git diff origin/master..master # 比较远程分支master上有本地分支master上没有的
git diff origin/master..master --stat # 只显示差异的文件,不显示具体内容
git remote add origin git+ssh://git@192.168.53.168/VT.git # 增加远程定义(用于push/pull/fetch)
git branch # 显示本地分支
git branch --contains 50089 # 显示包含提交50089的分支
git branch -a # 显示所有分支
git branch -r # 显示所有原创分支
git branch --merged # 显示所有已合并到当前分支的分支
git branch --no-merged # 显示所有未合并到当前分支的分支
git branch -m master master_copy # 本地分支改名
git checkout -b master_copy # 从当前分支创建新分支master_copy并检出
git checkout -b master master_copy # 上面的完整版
git checkout features/performance # 检出已存在的features/performance分支
git checkout --track hotfixes/BJVEP933 # 检出远程分支hotfixes/BJVEP933并创建本地跟踪分支
git checkout v2.0 # 检出版本v2.0
git checkout -b devel origin/develop # 从远程分支develop创建新本地分支devel并检出
git checkout -- README # 检出head版本的README文件(可用于修改错误回退)
git merge origin/master # 合并远程master分支至当前分支
git cherry-pick ff44785404a8e # 合并提交ff44785404a8e的修改
git push origin master # 将当前分支push到远程master分支
git push origin :hotfixes/BJVEP933 # 删除远程仓库的hotfixes/BJVEP933分支
git push --tags # 把所有tag推送到远程仓库
git fetch # 获取所有远程分支(不更新本地分支,另需merge)
git fetch --prune # 获取所有原创分支并清除服务器上已删掉的分支
git pull origin master # 获取远程分支master并merge到当前分支
git mv README README2 # 重命名文件README为README2
git reset --hard HEAD # 将当前版本重置为HEAD(通常用于merge失败回退)
git rebase
git branch -d hotfixes/BJVEP933 # 删除分支hotfixes/BJVEP933(本分支修改已合并到其他分支)
git branch -D hotfixes/BJVEP933 # 强制删除分支hotfixes/BJVEP933
git ls-files # 列出git index包含的文件
git show-branch # 图示当前分支历史
git show-branch --all # 图示所有分支历史
git whatchanged # 显示提交历史对应的文件修改
git revert dfb02e6e4f2f7b573337763e5c0013802e392818 # 撤销提交dfb02e6e4f2f7b573337763e5c0013802e392818
git ls-tree HEAD # 内部命令:显示某个git对象
git rev-parse v2.0 # 内部命令:显示某个ref对于的SHA1 HASH
git reflog # 显示所有提交,包括孤立节点
git show HEAD@{5}
git show master@{yesterday} # 显示master分支昨天的状态
git log --pretty=format:'%h %s' --graph # 图示提交日志
git show HEAD~3
git show -s --pretty=raw 2be7fcb476
git stash # 暂存当前修改,将所有至为HEAD状态
git stash list # 查看所有暂存
git stash show -p stash@{0} # 参考第一次暂存
git stash apply stash@{0} # 应用第一次暂存
git grep "delete from" # 文件中搜索文本“delete from”
git grep -e '#define' --and -e SORT_DIRENT
git gc
git fsck

自学 一个gem使rails console排版简洁易看懂

| Comments

1、打开专案里的 gemfile ,加上 gem 'awesome_rails_console' ,运行代码 bundle install

2、在终端机打开 rails c 输入一条查询命令,看,简洁易看懂,一目了然,对比下装与没装的区别(上图没装,下图装)


【魔改经验分享06】教材debug——七牛云无法上传图片问题

| Comments

教材 bug

“Rails 实战:购物网站” 教材:12-5 将JDStore部署到Heroku,按照这个教材完成后,发现部署到 heroku 专案出现了一个奇怪的 bug ,上传的商品图片定时消失。

debug

通过 chrome 浏览器的鼠标右键的检查功能发现,部署的专案未成功使用七牛云服务,是储存到了 heroku 上,但是 heroku 对于上传的图片会定时清除,所以部署到heroku 专案,上传的商品图片会定时消失。解决方法在 “Rails 实战:购物网站” 教材::12-3 使用七牛云(用来存储图片),Step 3: 在专案中设置七牛云,这一步中文件 app/uploaders/image_uploader.rb 代码修改按照如下提示就搞定了。

app/uploaders/image_uploader.rb
-  storage :file
  
+  #storage :file
+  if Rails.env.development? //开发环境执行以下代码
+    storage :file           //图片储存到本地
+  else  //非开发环境,也就是部署到 heroku 等地方时,执行以下代码
+    storage :qiniu          //图片储存到七牛云
+  end

感悟

这个解决方案是 Nic 助教教我的,使用这种方法可以正式部署到 heroku 等云平台时,商品图片上传到网站中能顺利储存到七牛云的专属储存空间;同时在本地测试时,商品图片上传直接保存到本地而不是重复上传到七牛云,最后出现 bug 冲突的情况。

全栈营交流论坛搜索关键字——魔改经验分享,就能搜索到我全部的魔改分享文章

如果您觉得这篇《魔改经验分享》很赞,欢迎您浏览我的作品:

知识猎人公会.猎人学院

如果您认为这个作品不错,冒昧地恳请您投上一票。

【魔改经验分享05】使用功能片段代码中的高频小套路

| Comments

大家从各个网站中找到自己需要的功能片段代码,接下来就是如何快速在自己的作品上使用,出现了 bug 迅速 debug ,以下就以使用的 注册/登录 页面的功能片段代码为例。


https://bootsnipp.com/snippets/nrbn7


功能片段 HTML 代码实际使用,“+” 的代码都是网站专案原始的 登录/注册 页面使用的 HTML 代码,这是为了在最快实作速度下保证 注册/登录 功能能正常使用。除非自己对这部分代码十分熟悉,知道具体每一小段代码的作用与组合效果,能自己随意拆解代码并组合使用。做不到这些推荐还是使用专案的原始功能代码实作速度最快,否则大量的时间浪费在优化代码上了。

app/views/devise/sessions/new.html.erb
<script src="https://use.typekit.net/ayg4pcz.js"></script>
<script>try{Typekit.load({ async: true });}catch(e){}</script>

<div class="container">
<h1 class="welcome text-center">Welcome to <br> Ice Code</h1>
    <div class="card card-container">
    <h2 class='login_title text-center'>Log in</h2>
    <hr>

+    <%= simple_form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
-        <form class="form-signin">
+        <div class="form-signin">
-                <span id="reauth-email" class="reauth-email"></span>
-                <p class="input_title">Email</p>
-                <input type="text" id="inputEmail" class="login_box" placeholder="user01@IceCode.com" required autofocus>
-                <p class="input_title">Password</p>
-                <input type="password" id="inputPassword" class="login_box" placeholder="******" required>
-                <div id="remember" class="checkbox">
-                    <label>
                        
-                    </label>
-                </div>
-                <button class="btn btn-lg btn-primary" type="submit">Login</button>
                
                
+          <%= f.input :email, required: false, autofocus: true, label:"邮箱" %>
+          <%= f.input :password, required: false, label:"密码" %>
+          <%= f.input :remember_me, label:"记住我", as: :boolean if devise_mapping.rememberable? %>

+          <%= f.button :submit, "登录" %>
+        </div><!-- /form -->
+     <% end %>

    </div><!-- /card-container -->
</div><!-- /container -->

在网站专案的 CSS 代码的文档,完全复制黏贴全部的功能片段的 CSS 代码

app/assets/stylesheets/application.scss
# ...略

body, html {
    height: 100%;
    background-repeat: no-repeat;
    ...........
}

# ...略 //功能片段中的 css 代码全部复制黏贴

.forgot-password:hover,
.forgot-password:active,
.forgot-password:focus{
    color: rgb(12, 97, 33);
}

debug

因为功能片段代码的命名与自己的专案不同,会出现许多 bug ,全部 debug 就 ok ,这些 bug 大多数集中在 CSS ,小部分在 HTML 中。

debug-01



debug-02




debug-03 大家不觉得提示 flash 正下方出现一条白边很影响美观吗,我们解决掉它。



解决这个 bug 无意中引起一个隐藏小 bug

好啦,本篇《魔改经验分享》结束了,感谢各位助教与小伙伴的无私分享与帮助,希望能帮助各位小伙伴。

本文赵龙,如果您觉得这篇《魔改经验分享》很赞,欢迎您浏览我的作品:

点击》知识猎人公会.猎人学院《点击

如果您认为这个作品不错,冒昧地恳请您投上一票。

全栈日记 65 2017-05-24 人生操作系统第七级的人,拥有影响人类未来发展方向的潜力

| Comments

2017-05-24 (周三) 晴 石家庄

要点:想要影响人类未来发展方向,人生操作系统第七级是入门限制条件!

觉察点:
1、人生操心系统达到第七级的人,拥有影响人类未来发展方向的潜力。
2、9 宫格思维法不比 16格笔记法是同等级的思维工具,要尽快熟练掌握并多加运用到尽可能多的领域中!
3、开始连续 debug 后进入心流状态,尽快掌握其中的高频小套路。
4、魔改分享再写一篇发表到交流论坛,大力拉票。
5、“心流分享”直播的 9 宫格思维图与逐字稿尽快完成!有大用!

总结:

Objective

关于今天的学习与工作,记得什么?完成什么?

JD-Store 魔改大赛第二季的参赛作品 debug 不断。

  • JD-Store 魔改大赛第二季其他参赛作品的留言中分享了本人与队友合作完成的魔改分享文——【魔改经验分享04】一张图快速理解“购物车的基本逻辑”
  • debug :2 个明显 bug ,1 个隐藏 bug 。
  • 优化 注册/登录 页面的 “注册/登录” 按钮,之前的不美观。
  • JD-Store 魔改大赛第二季的队友
    • 分享了几篇在全栈营官方微信群收集到的魔改教程。
    • 分享了近期对人生操作系统的一些感悟。
  • 印象笔记的网页插件开始尝试使用,挺方便的。
  • 全栈营教材推荐的 Tower 初次尝试,效果不错哦。
  • 完成围绕《心流学习法》为核心的三年内的行动初期 9 宫格思维图。
  • 更新了 JD-Store 魔改大赛第二季参赛作品的 debug 信息。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

连续 debug 进入到心流状态,自己都感到小惊喜哦。

高峰:
  • 连续 debug 的时候,
低点:
  • 无明显低点。每天思考、理解与实践这五句话,基本没有什么事能让我纠结超过分钟了 —— 这事对吗?什么是更重要?什么最重要?什么事绝对不能做?什么事一定要做到底?

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
  • 印象笔记的网页插件的使用。
  • 项目管理的 “效率工具.Tower” 初次尝试。
感悟:
  • 人生操作系统达到第七级的人,有能力与资格看到这是世界运行的部分真理。
    一个恰当的类比——开始真正掌握并运用 “世界真理碎片” 的力量(就是字面上的意思)。
    从某种意义上来说,都拥有影响人类未来发展方向的潜力。注意:只是潜力。
  • 要多加使用 9 宫格思维法!效果不比 16格笔记法差多少呢!
  • 有了新的感悟与体会后,尽快分享进行提取练习!加深记忆为将来更深刻的思考与感悟做准备。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

白天 debug 不断,晚上思考未来。

明天:
  • 魔改分享文再写一篇,大力拉票!
  • 在一块听听平台直播的 “心流分享” 9 宫格思维图与逐字稿完成!

【魔改经验分享04】一张图快速理解“购物车的基本逻辑”

| Comments

购物网站.用户

全栈营教材 “Rails 实战:购物网站” 的核心可以理解为 “rails 101” 框架使用 “购物车系统” ,再加上其他的辅助功能。本文就是帮助大家快速理解最重要的核心——“购物车系统”。

购物车系统的主要角色是 “用户” 与 “购物车” 。在首图中的红框部分,用户与网站前端页面的交流由文件 config/routes.rb 处理,该文件的作用可以类比为分配公司网络的大型路由器。相关内容在全栈营教材 “rails 101” 的 “4-9(解说)Rails 的 CRUD 与 RESTful” 有详细解释。

简单说明下:用户进入购物网站首页后,看到自己喜欢的商品点击图片进入商品介绍页。在用户进行这个简单的操作中,用户向网站发送了读取该商品介绍页的 GET 请求,网站收到请求后及时反馈信息给给用户。这个过程会生成用户想要的商品介绍页与对应的网址,网站与用户就是以这样的基本逻辑进行交流的。

config/routes.rb
# ...略
  resources :products do   //resources.资源;products.商品;
    member do              //member.网站会员;do.执行以下操作;
      post :add_to_cart    //post:新增请求;add_to_cart.加入购物车;
    end
  end
# ...略


购物网站.购物车

购物车整体运行的基本逻辑

方便大家快速理解,将 “购物车系统” 类比为一个餐馆。在首图的红框部分将 “购物车系统” 大致分为三部分:

  • “Views.用餐区” ; “Controller. 前台” ; “Model.后厨” 。
    • “Views.用餐区” :客户在进入餐厅之后,一切操作都是在这里进行,例如 “点餐.商品加入购物车” , “好几道菜同时下单.购物车页面” , “客户结账.订单结账页面” 等等。
    • “Controller. 前台” :所有的客户在餐厅下单后,订单集中在前台分类处理,确定交给 “Model.后厨” 的哪一位 “厨师.model” 做菜。“Model.后厨” 完成一道菜后,先让 “Controller. 前台” 过目,再决定交给哪一位客户。
    • “Model.后厨” :这是 “购物车系统” 最重要、最精华的部分!客户下单后,能不能让客户满意,就是看 “Model.后厨” 最终的处理结果了。

将 “购物车系统” 这样分为三部分能极大的提高运作效率。如果去掉 “Controller. 前台” ,会使整个购物车系统的复杂度指数级增长。“Views.用餐区” ; “Controller. 前台” ; “Model.后厨” 三部分取首字母也被缩写为 “MVC” 。

current cart

现实中,所有的客户进入超市购物都会配备一辆购物车,无论客户是否为超市的会员。 current cart 这个代码就是判断客户是否有一辆购物车,如果没有就指派一辆新的购物车给客户。

全栈营教材 “Rails 实战:购物网站” :5-4 Step 3: 购物车设计 Part 2 ,该页教材的最后就有这段代码的详细解释。

app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
# ...略

  helper_method :current_cart

  def current_cart
    @current_cart ||= find_cart
  end

  private

  def find_cart
    cart = Cart.find_by(id: session[:cart_id])
    if cart.blank?        //blankk.空白
      cart = Cart.create
    end
    session[:cart_id] = cart.id 
    return cart           //return.返回
  end
end

通过 Controller 理解购物车的运行

大家继续关注首图的红框部分,我尝试让大家快速理解购物车如何运行。当用户在商品介绍页点击加入购物车的 “Views.按钮” 时, “Controller. 控制器” 接受到了用户请求使用以下判断式代码,从后台数据库( “Model.模型” 在大多数的情况配合数据库处理)中找到对应的商品信息添加到用户的专属 “cart.购物车” 中,并将执行完毕的操作结果反馈到 “Controller. 控制器” , “Controller. 控制器” 再将这个结果反馈到用户。客户浏览网站的顶部导航栏的显示购物车内的商品总数会 +1 。首图的红框中的 1 > 2 > 3 > 4 。

app/controllers/products_controller.rb
class ProductsController < ApplicationController
# ...略

  def add_to_cart       //添加到购物车
    @product = Product.find(params[:id])   
    //这段代码表示从网站的商品仓库找到对应的商品且确定下来;params.参数
    
    redirect_to :back
    //redirect.重定向;返回
  end
end

注意: @ 代表全局变量,没有 @ 则网站无法判断出到底是哪个商品,会出现报错,这是因为 product 不是唯一的,网站有许许多多的 product 形成了一个巨大的 “Product.all.商品仓库” ,如果直接给出一个 product 相当于整个商品仓库都加入到用户的购物车,网站会出现严重的 bug 。

购物车中的 4 个主要 Model

user.用户:网站需要知道是哪位用户在浏览。
product.商品:网站需要知道商品仓库中的哪些商品被加入购物车。
cart.购物车:网站需要知道用户是否拥有购物车且判断出是哪一辆购物车。
cart_item.商品条目:网站需要知道加入购物车的商品信息。

注意: “cart_item.商品条目” 可以形象的类比为 “Product.all.商品仓库” 内存放每一个商品的箱子,有的 “product.商品” 的箱子像集装箱这么大,有点只有一个小篮子一样大。购物车中的每一个 “product.商品” 的 “cart_item.商品条目” 是从 “Product.all.商品仓库” 中对应的 “cart_item.商品条目” 取出来的,并重新做出一个小的 “cart_item.商品条目” 存放在每一个用户的 “cart.购物车” 中。全栈营教材 “Rails 实战:购物网站”:5-3 Step 2: 购物车设计 Part 1, 也有相关的解释。可以将两个解释互相对应看,方便理解。

Model 的基本逻辑关系

购物车中的 4 个主要 Model 的基本逻辑关系
user
  has :cart
  //用户拥有一辆购物车
  
product
  belongs_to :carts;
  //商品属于许多辆购物车
  
  belongs_to :Product.all;
  //商品属于整个网站的商品仓库

  
cart
  has many :products;
  //购物车拥有需要的商品
  
  has many :cart_items;
  //购物车拥有需要的商品条目信息

   
cart_item
  belongs_to :cart;
  //商品条目信息属于许多辆购物车
  
  belongs_to :product;
  //商品条目信息属于许多商品

Model 与数据库中的关系的详解

已经建立的 Model —— cart_item ,需要在数据库中添加交易记录,并修改。

db/migrate/xxxx_create_cart_items.rb
class CreateCartItems < ActiveRecord::Migration[5.0]
  def change
    create_table :cart_items do |t|  
    // |t| 在这段代码代表cart_items t 可以换成任意字母
    
+     t.integer :cart_id
      //integer.整数;

+     t.integer :product_id
+     t.integer :quantity, default: 1
      //quantity.数量;default.默认

      t.timestamps
      //timestamps.时间戳
    end
  end
end

注意: db/migrate/XXX 文件修改后,终端必须执行 bundle install 指令,数据库才会正式修改。

app/models/cart.rb
class Cart < ApplicationRecord
# ...略

  def add_product_to_cart(product)
    ci = cart_items.build
    //ci 在这段 def..end 代码中,赋予了 cart_items.build 的含义。build.建造
    
    ci.product = product
    //从整个商品仓库中找到对应的商品
    
    ci.quantity = 1
    //从找到的商品的集装箱中拿出 1 
    
    ci.save
    //save.保存
  end
  
# ...略
end

注意:ci.product 未使用 @ ,因为文件 app/controllers/products_controller.rb 已经在 “Product.all.商品仓库” 中确定了是哪一个 “product.商品” ,没有必要再次重复确认。

app/controllers/products_controller.rb
class ProductsController < ApplicationController
  def index
    @products = Product.all
  end

  def show
    @product = Product.find(params[:id])
    //从商品仓库中找到对应商品的 id 参数信息
  end

# ...略
end

好啦,本篇《魔改经验分享》结束了,感谢各位助教与小伙伴的无私分享与帮助,希望能帮助各位小伙伴。

本文由 赵龙 与 彭皓heric 合作完成,如果您觉得这篇《魔改经验分享》很赞,欢迎您浏览我们的作品:

点击》知识猎人公会.猎人学院《点击

如果您认为这个作品不错,冒昧地恳请您投上一票。

全栈日记 62 2017-05-20 已经明确未来3年的短期目标

| Comments

2017-05-20 (周六) 天气晴 石家庄

要点:本人的 “心流分享” 必须邀请到知识变现领域的重量级嘉宾!才有一炮打响的可能!

觉察点:
1、魔改大赛开始前,必须完成《【魔改经验分享04】一张图快速理解“购物车运行的基本逻辑”》。
2、本人的 “心流分享” 邀请知识变现领域的重量级嘉宾!
3、ORID 的高频小套路,先使用16格笔记法快速提取当天的重点,再扩展地写ORID,效果一流。
4、明天,与队友分享16格笔记法的使用心得。

总结:本人的 “心流分享” 通过邀请到知识变现领域的重量级嘉宾,是魔改大赛的参赛作品得到大量的票从而取得好名次,同时最大限度的带动队友认知升级。这个过程会极大的宣传本人的核心知识付费课程《心流学习法》,认识更多得到本人认可的未来小伙伴,尽最大的努力帮助他们认知升级与通过实现知识变现实现财富自由。帮助未来小伙伴的实现财富自由的最低标准——2017年的通货膨胀下,在北上广深长期生活且年收入最低30万。

Objective

关于今天的学习与工作,记得什么?完成什么?

  • JD-Store 魔改大赛第二季的队友线上交流:
  • 思考了一些 JD-Store 魔改大赛第二季的比赛思考,在魔改大赛后期必须加上真实的商品让全栈营的同学能下单付款后,收到真实的商品,实现的时间越早越好。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

魔改大赛正式开赛时间越接近,心越平静。

高峰:
  • 本人确定要写 《【魔改经验分享04】一张图快速理解“购物车运行的基本逻辑”》 ,队友明确支持。队友的这句话我非常认同,通过写教程让你更好的理解 “Rails 实战:购物网站” 的购物车基本逻辑是最重要的,其他的是次要的。为他竖个大拇指,不愧是坐享半年多了。
  • 想到了一个不错的提高魔改大赛名次的点子——魔改大赛后期加上真实的商品。
低点:
  • 无明显低点。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

感悟:
  • 让 xdite 老师、李笑来老师等牛人做本人的 “心流分享” 嘉宾的第一步,是做出一个能打动他们的测试分享作品。
  • 让 “心流分享” 的各位嘉宾从中获益,是嘉宾积极参与的关键。
  • 记录 ORID 的高频小套路,使用 16 格笔记法快速精简列出当天的重点(本人能看懂的精简就 ok ,熟练后用不了 10 分钟),再正式的扩展填写到 ORID 中。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

思考如何最高效地提高我与队友 JD-Store 魔改大赛第二季的比赛名次。

明天:

全栈日记 61 2017-05-19 开启心流外挂,狂撸代码根本停不下来

| Comments

2017-05-19 (周五) 天气晴 石家庄

要点:心流分享的首选嘉宾——xdite 老师,没有她就没有我的 “心流学习法” 。

觉察点:
1、利用一切可以利用的工具,快速进入高层次的心流,进入类上瘾状态,工作与学习是停不下来的节奏!
2、理解全栈营教材 “Rails 实战:购物网站” 的购物车基本逻辑。
3、尝试邀请 xdite 老师做 “心流分享.一块听听.语言直播” 的嘉宾。
4、每天专注在一件核心任务上的效果开始体现,效果惊人!下午 5 点前,就完成了编程教材第二遍手打代码练习 “Rails 实战:购物网站” 的最新课程进度。原先以为在晚上 9 点前完成就不错了。

总结:今天,利用了各种工具与手段进入心流状态,开启逆天作弊器快速完成 “Rails 实战:购物网站” 的第二遍手打代码练习;在队友的讲解下,快速理解了购物车的基本逻辑。明天,继续邀请 xdite 老师做 “心流分享.一块听听.语言直播” 的嘉宾。

Objective

关于今天的学习与工作,记得什么?完成什么?

  • 听着轻音乐快速完成编程教材第二遍手打代码练习 “Rails 实战:购物网站” 的最新课程进度。
  • JD-Store 魔改大赛第二季的队友线上交流:
    • 队友讲解全栈营教材 “Rails 实战:购物网站” 中购物车的基本逻辑,听完讲解后用大量的类比反馈给队友,效果不错。
    • 跟队友分享了一个好消息,我已经初步开始掌握执行力的秘密,也是打开大脑极限潜力最重要的一把关键钥匙。
  • 报错集一篇:报错集 039 报错提示:NoMeThodEorror, 文件config/routes.rb缺失代码;一些发散思考的感悟
  • 开始尝试邀请 xdite 老师做 “心流分享.一块听听.语言直播” 的嘉宾。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

高峰:la'ls
  • 狂撸代码的时候,根本停不下来,感觉太爽了。
低点:
  • 无明显低点。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
感悟:
  • 与队友的线上交流时间不一定要固定时间段,只有双方有时间就可以交流,也不是必须及时交流,非及时交流也不错,只要达到有效沟通的效果就 ok ,不要局限与交流的形式。
  • 大能注视着我,不能浪费他们的苦心啊。对方有合作的倾向,只要不互相触犯对方的底线与界限就可以合作,如果违反了这关键的一条,没有任何合作的必要了。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

上瘾般的撸代码,根本停不下来。

明天:
  • 尝试与队友 github 协作练习。
  • 继续尝试邀请 xdite 老师做 “心流分享.一块听听.语言直播” 的嘉宾。

报错集 039 报错提示:NoMeThodEorror, 文件config/routes.rb缺失代码;一些发散思考的感悟

| Comments

错误记录

“Rails 实战:购物网站” 教材:6-1 购物车练习作业 (解答) ,Step 4: 可以更改购物车内购买的商品数量(原本预设数量都是1),这一步出现网页红色报错。

分析与解决方式

我用代码对比网站——text-compare ,检查这一步 “Step 4: 可以更改购物车内购买的商品数量(原本预设数量都是1)” ,未发现代码错误。尝试回退这一步的代码,出现新的报错。该报错提示在这一步 “Step 2: 删除购物车内某一商品” 出现问题,想到这一步没有进行过测试,仔细检查,发现遗留了一段代码。补上这段代码,完成 debug。

config/routes.rb
Rails.application.routes.draw do
...(略)
+ resources :cart_items
end

感悟

每一步都要进行检测,这一次的 bug 就是没有执行仔细检测每一步,从而忽略了一个报错,导致了另一个报错,本质是同一个bug 造成的。如果是两个 bug 积累形成的报错,那样 debug 的难度会几倍上升。每增加一个 bug ,debug 的难度呈现指数级上升!在只有一个 bug 的时候解决难度最小。


由此延伸想到,有点 bug 在流量大增的时候才会暴露,这类 bug 的本质其实是未考虑到大流量需求造成的,有的可以代码升级搞定,有的必须提升网站服务器的性能、有的必须提升服务器的网速总带宽等等。这类 bug 是不可避免的,由目前的最小 MVP 产品发展到大型网站的创业基本模式决定。

全栈日记 60 2017-05-18 开始享受撸代码的过程了

| Comments

2017-05-18 (周四) 天气晴 石家庄

要点:专注才能快速进入心流

觉察点:
1、专注撸代码。
2、晚上,尽量避免打扰队友的宝贵的学习与比赛时间;白天,非紧急事件通过微信文字交流,遇到重要的点子与事件直接线上视频交流!
3、邀请 xdite 老师做 “心流分享.一块听听.语言直播” 的嘉宾。

总结:明天,尽快撸代码完成“Rails 实战:购物网站” 的最新课程进度,记得邀请 xdite 老师做 “心流分享” 的嘉宾;避免打扰队友宝贵的学习与比赛事件。

Objective

关于今天的学习与工作,记得什么?完成什么?

  • 编程教材第二遍手打代码练习 “Rails 实战:购物网站”:6-1 购物车练习作业 (解答),加深对教材的理解。
  • 全栈营官方直播:5月18日 ihower 教你如何使用 User Story,Tower 和 Github 进行协作开发 ,干货满满,都是魔改大赛需要的。
  • JD-Store 魔改大赛第二季的队友线上交流:
    • 队友继续赶 “Rails 实战:购物网站” 作业进度。
    • 晚上 Meetup 的线上交流,队友希望不要占用他过多的时间,白天有本职工作,晚上才有时间学习全栈营课程与参加魔改大赛。这是我个人疏忽了,双方的情况不同。虽然,我的学习时间比队友多,但他的学习效率比我强。我的优势在与我的人生操作系统已经大幅度升级,思考质量比大多数人要高至少两个量级,当然,对于已经开启通往超级天才之路的 xdite 老师,我还是一个小娃娃。我唯一的优势的是高速成长!
    • 队友不需要 “代码对比网站——text-compare” 这样的工具,在输入代码的时候,就已经仔细确认过了,一旦出现代码拼写错误,也可以根据报错提升快速 debug ,这是一种刻意培养的能力。队友大学计算机专业有编程基础,这不奇怪。本人还是利用好 “代码对比网站——text-compare” ,因为我没有编程基础,双方条件完全不同。最重要的是全栈营 JD-Store 魔改大赛第二季几天后就开始了,没有足够的时间可以练习队友的技能了。
    • 本人近期在 “李笑来.人生首位启蒙导师” 创立的 “知识付费平台.一块听听” 的 “心流分享” ,尝试邀请 xdite 老师做嘉宾,如果 xdite 老师最近的行程与此有冲突,再尝试邀请其他人。xdite 老师是最适合的嘉宾,因为这次的 “心流分享” 是从 xdite 老师得到的启发。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

高峰:
  • 听着舒缓的音乐,使用 Macbook 、机械键盘、人体工程学鼠标、双屏显示,打开教材 “Rails 实战:购物网站” 撸代码,这是一种享受,开始理解了顶级程序员熬夜撸代码的感受,根本停不下来。
低点:
  • 无明显低点。长时间锻炼元认知能力,很少有事能让我长时间纠结了,真的纠结了转移注意力到开心的事就 ok 了,人类的大脑无法同时处理两种对立情绪。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
  • 使用 “代码对比网站——text-compare” ,辅助自己快速进入伪心流状态,效果非常棒!该工具对于编程新人是福音!
    提高注意力的核心公式:大脑.输出速度 = 输入速度
感悟:
  • 双方的高效协作是最大限度的坦诚,这样可以降低双方交流中的阻力,使交流过程中的 bug 的数量降到最低同时最快速度 debug ,从根本上提高协作效率。
  • 每一天就专注一件核心任务,工作效率最高!这几天的实践已经充分证明了,完成核心任务可以细分几个子任务,多进程操作。不能没有核心任务,同时每一周都要有一个更大的核心任务,每天的核心任务围绕每周的核心任务开展,可以一次往下推导。每日的核心任务非固定,根据每个阶段的具体需求决定!
  • 想到一个不错的心流类比:人类的思考建立在记忆之上,心流就是将深藏在潜意识中的记忆挖掘出来并高效重组为一个 cpu ,不同层次的心流 cpu 的计算能力差距巨大;每一个人的知识结构与人生经历不同,自然潜意识的记忆也不同,同一层次的心流重组的 cpu 的功能也千差万别。有的人 cpu 计算能力极强,有的人 cpu 大数据分析能力极强,有的人 cpu 高效提取能力极强等等。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

专注撸代码,快乐编程。

明天:
  • 最快速度完成第二遍手打代码练习 “Rails 实战:购物网站” 的最新课程进度,为全栈营 JD-Store 魔改大赛第二季做准备。
  • 尝试邀请 xdite 老师做本人 “心流分享.一块听听.语言直播” 的嘉宾。

全栈日记 59 2017-05-17 意志力降低,效率也随之降低,要意志力充能了

| Comments

2017-05-17 (周三) 天气晴 石家庄

要点:准备尝试让 xdite/Nic 参与 “心流分享” 的直播,让其助阵。

觉察点:
1、加快购物网站的第二次练习进度
2、在一个小错误上浪费了太多时间,因小失大。
3、尝试让 xdite/Nic 参与 “心流分享” 的直播,让其助阵。
4、注意力与意志力不足,效率降低。

总结:开始正式准备 JD-Store 魔改大赛的前期工作。

Objective

关于今天的学习与工作,记得什么?完成什么?

本地新建 JD-Store 专案,开始购物网站的第二次练习。目前进度:4-1 Step 0 - 基础建设

  • 给 “新生大学同学.杨竹筠” 提出一个思考方式的建议,在她的微信公众号的留言被精选。
  • “Rails 实战:购物网站”:7-2 Github协作指南,练习这一章节的时候由于个人疏忽,在 Github 中未给自己留下有最初版本的 master 主分支的 jdstore 副本。前后浪费了近 2 小时来解决这个问题。最后在本地新建专案解决,同时从 Slack 助教得知,JD-Store 魔改大赛的作品也是自己新建立的分支,也不是 fork 全栈营的专案的。
  • JD-Store 魔改大赛第二季的队友线上交流:
    • “心流分享” 暂定为魔改大赛开始投票的第三天左右。尝试让 xdite/Nic 参与其中并助阵。
    • 确定 Github 的协作基本方式:双方都当一次主程。
  • 完成一篇自学贴 lodgown :自学 Github修改用户名攻略
  • 完成一篇报错集 lodgown :报错集 038 最初的bug原因未找到,最后的bug是多出的一段代码造成的

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

高峰:
  • 深入思考的留言被 “新生大学同学.杨竹筠” 的微信公众号精选了,有价值的留言都会被注意到哦。
低点:
  • 在“Rails 实战:购物网站”:7-2 Github协作指南,这一章节出现的小问题浪费了不少时间,虽然从中知道了不少关于 git 的知识。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
感悟:
  • 干扰因素过多,已经影响学习与工作效率了!
  • 要学会清空杂念!因为杂念已经影响了坐享的效果了。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

效率不满意,意志力消耗过快了,需要补充。

明天:
  • 准备尝试让 xdite/Nic 参与 “心流分享” 的直播,让其助阵。最迟本周五开始行动!
  • 加快购物网站的第二次练习进度。

报错集 038 最初的bug原因未找到,最后的bug是多出的一段代码造成的

| Comments

错误记录

“Rails 实战:购物网站” 教材:11-1 切换订单状态 , Step 4 : 用 AASM 的机制设定订单付款,这一步完成,进行 rails c 检测出现红色报错。

分析与解决方式

自己尝试将这一页的教材重新做一遍,出现了先后如下两个报错。


最后发现在第 44 行出现多余的一段代码,删掉这段代码 debug 完成。

感悟

这次 debug 未搞明白最初的 bug 原因,不过解决了就是好样的。

自学 Github修改用户名攻略

| Comments

第一步

第二步

第三步

注意:

修改 Github 用户名后,本地的专案会出现无法上传到远程仓库的情况,两种解决办法

第一种

使用新的用户名再次登录,教材 “Rails 第一课” :6-1 Git 基本指令
git config
就像是首次玩游戏一样,你必须设定游戏玩家角色叫什么。这里我们必须要设定两个参数:
git config --global user.name "你的名字"

切记"你的名字"要修改成自己的名字
git config --global user.email "你的email@xxx.xxx"

切记 你的 email@xxx.xxx 要修改成自己用来注册 github 的那个 email
这样以后进行存档时,就会纪录你是这次进度的存档者。

第二种

终端执行 git remote rm origin ,再执行 git push --all origin

全栈日记 58 2017-05-16 真理是最强的力量

| Comments

2017-05-16 (周二) 天气晴 石家庄

要点:宇宙真理是最强的力量,在真理面前一切都是渺小的!
    
觉察点:
1、科学真理 = 道!
2、推动 《心流学习法》 下一阶段准备工作。
3、关公的豪气、诸葛亮的智慧。
4、与未来的小伙伴一起认知迭代升级,人生操作系统迭代升级。
    
总结:用 《心流学习法》 的成果,帮助未来的小伙伴认知迭代升级,人生操作系统迭代升级,最终一起科学求道、科学问道、科学追道,也就是探索宇宙真理。

Objective

关于今天的学习与工作,记得什么?完成什么?

  • “Rails 实战:购物网站” 作业进度:12-1 订单状态切换(解答),已经完成了发布的最新教材作业。
  • JD-Store 魔改大赛第二季的队友线上交流:
    • 确定 User Storys 的基本时间主线,接下了补充就 ok 。
    • 如果获得魔改大赛第一名的思路与细节修改。
    • 互相交流坐享经验。
    • 我分享了本人的 “科学求道.宗教观” ,科学 = 道 = 真理 。一个非常好的例子,爱因斯坦的狭义相对论与广义相对论就是真理!就是道!
  • “李笑来.人生首位启蒙导师” 创立的 “知识付费平台.一块听听” 已更新本人的账户信息,已正式成为主讲人。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

关公的豪气!

高峰:
  • 在微信打开一块听听,确认自己已正式成为主讲人的时候。这是踏出实现梦想的一小步。
低点:
  • 工作中遇到一个小失误,下意识的辩解。发现自己老旧的思维习惯还有残留,尽快清理!

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
  • 兵来将挡水来土掩,最差的结果也就是鱼死网破而已,要有关公的豪气、诸葛亮的智慧。
感悟:
  • 科学真理就是道家追求的道!道 = 科学真理!
  • 心魔是一种有恶意的特殊存在,有的人将它粗略的理解为意志形态的一种。这些特殊存在其实很普遍,只是世人对此几乎处于无知的状态,所以才感觉很麻烦。对于掌握部分世界真理的人,例如牛顿、爱因斯坦、霍金等人,其实一点都不神奇。
  • 帮助更多的未来小伙伴认知迭代升级,人生操作系统迭代升级,那就是帮助大家一起实现梦想。
  • 一切不触犯对方边界与底线的都可以合作,如果违反基本原则,关公就是榜样!一夫当关万夫莫开!

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

明天:
  • JD-Store 魔改大赛第二季的队友:
    • 开始 Github 协作。
    • 想到魔改大赛相关点子,立刻与队友沟通(微信、zoom 等),不然好的想法与创意就从脑海中飘走,人类的大脑基本结构决定的!
  • 报错记录 lodgown
  • “Rails 实战:购物网站”开始再练习一遍。
  • 推动 《心流学习法》 下一阶段准备工作,例如与 “李笑来.人生首位启蒙导师” 创立的 “知识付费平台.一块听听” 进一步合作,整理教材、收集素材等等,太多的事情要开始干了。

全栈日记 57 2017-05-15 复利效应初步体现——好消息不断

| Comments

2017-05-15 (周一) 天气晴 石家庄

要点:复利效应

觉察点:
1、复利效应。
2、魔改大赛规则修改。
3、JD-Store 魔改大赛第二季的 User Sorys 尽快完成。
4、《心流学习法》进入下一阶段。

总结:
借助一切资源打造自己的知识付费课程——《心流学习法》,例如:全栈营的魔改大赛、“李笑来.人生首位启蒙导师” 创立的 “知识付费平台.一块听听”,等等。

Objective

关于今天的学习与工作,记得什么?完成什么?

  • “Rails 实战:购物网站” 进度:9-1 订单练习作业(解答),第一遍复制黏贴。终端执行 rails g model product_list 生成的文件中有 db/migrate/XXX(一堆数字)_create_product_lists.rb 。两段代码分段看就一目了然。
    rails g , model , product_listdb/migrate/XXX(一堆数字)_create ,_product_lists.rb
  • 初步通过 “一块听听.主讲人审核” ,开始进入协商 “心流分享” 的单次直播具体事项阶段。
    • 暂定:本人原创的 《心流学习法》 与 “李笑来.人生首位启蒙导师” 创立的 “知识付费平台.一块听听” 合作。
  • 全栈营官方直播:5月15日 周一 Nic 商店开发实战技巧, Nic 助教公布魔改大赛规则的修改结果;干货满满,有以下内容:
    • Debug 神器使用方式
    • 购物车基本设计说明
    • 常用语法说明
    • 排序功能 acts_as_list
  • 本人组织的 “赵龙.线上Meetup” ,分享了自己的部分成长心得:
    • 超级天才——商业奇才.马云、编程大神.xdite、创造奇迹.马斯克,他们共同的成长核心秘密。
    • 自证预言——大脑潜意识的钥匙
    • 元认知能力——安全提升人生操作系统的关键。
  • 本人与 “全栈营免费学员.马金安” ,在线上聊天非常愉快,也许是未来的小伙伴哦。

Reflective

如何形容今天的情绪,今天的高峰与低点什么?

好消息不断,真开心。

高峰:
  • 从 “一块听听.主讲人审核负责人.王柳浩” 确认自己初步通过 “一块听听.主讲人审核” 。
  • 本人与 “全栈营免费学员.马金安” 线上聊天非常愉快的时候。
低点:
  • 早上,打扫公司卫生,思考的太沉迷而犯了一个低级错误。术业有专攻,果然应该早点转行。

Interpretive

我们今天学到了什么?今天的重要领悟是什么?

学到:
感悟:
  • “复利效应” 这个概念的有意或无意的实践,已经出现成果。让它烙印到我的意识中。
  • 人生操作系统降级太危险,本质是自我谋杀!千万不能这么干!!!
  • 元认知能力是认知升级的关键,更是安全提升人生操作系统的关键!
  • 时刻主动!这是实现梦想的正确打开方式之一哦。

Decisional

如何用一句话形容今天的工作,明天还需要继续努力完成那些工作?

好消息不断,实践 “复利效应” 的初步成果。

明天:
  • JD-Store 魔改大赛第二季的队友:
    • 讨论 User Storys。
    • 魔改大赛规则有调整,协商参赛思路修改。
    • 交流双方的 “Rails 实战:购物网站” 的学习进度。
  • 本人原创的《心流学习法》系列课程,推动进入下一阶段。