Ruby on Rails的路由

路由就是用户输入URL地址,后端服务器能找到对应的处理程序。在Ruby on Rails中,我理解的路由(Route)主要和两件事情相关,一是将URL和http动作(Verb)映射到后端的控制器(Controller)对应的动作(Action);二是页面返回时,需要将Rails 视图(Views)中常用的帮助方法(Helper)转换成路径(Path)或URL。

路由的映射配置在config/routes.rb,我们可以在命令行输入bin/rake routes查看路由信息,例如:

Prefix Verb URI Pattern Controller#Action
posts GET /posts(.:format) posts#index
POST /posts(.:format) posts#create
new_post GET /posts/new(.:format) posts#new
edit_post GET /posts/:id/edit(.:format) posts#edit
post GET /posts/:id(.:format) posts#show
PATCH /posts/:id(.:format) posts#update
PUT /posts/:id(.:format) posts#update
DELETE /posts/:id(.:format) posts#destroy
about GET /about(.:format) pages#about

这张表格中的四列就包含了之前所说的两层含义,通过URI Pattern和Verb动作就可以对应到后端处理的Controller#Action,比如GET “/posts/new” 就对应于PostController中的new方法,而最前面的前缀new_post则采用的是命名路由方式,表示可以在视图.erb模板文件中使用new_post_path或new_post_url的帮助方法,来生成相应的URL地址,path是相对路径,url则是绝对路径。

在config/routes.rb中设置路由最简单直接的方法就是key/value形式,指定Http Verb和URI Pattern映射到对应的方法,也可以是静态页面,比如:


root "posts#index"
get '/about', to: 'pages#about'

root相当于get ‘/‘就是映射到app/controllers/posts_controller.rb中的PostsController类的index方法,而get ‘/about’则是对应到app/views/pages/about.html.erb页面模板文件。

这个写法虽然直接,但会对一个资源(Resource)的增删改查来说写起来就繁琐了,往往会采用RESTful的形式。一个Resource有一堆的动作,index, show, new, edit, create, update和destroy, 基本的写法就是:


resources :posts

这就生成了前面例子中有关Post的index, show, new, edit, create, update和destroy所有路由信息了。路由使用 HTTP 方法和 URL 匹配请求,把四个 URL结合不同的HTTP方法映射到七个不同的动作上。

REST有主要有两个核心精神,参见RESTful 應用程式

  • 使用Resource来当做识别的资源,也就是使用一个URL网址來代表一个Resource。
  • 同一个Resource则可以有不同的Representations格式变化。

再解释一下bin/rake routes输出信息中的格式,:id是传入参数,可以通过params[:id]获得;(.format)则说明可以让路由接受.json、.xml等有扩展名的网址,并且转成params[:format]参数传入Controller里,搭配respond_to而回传不同的格式。

基本的就是这样,具体路由为了简化书写,还有resource的嵌套,as别名,module/namespace/member/collection/scope多种组合形态,还可以用except/only做七个预设资源路由的限制,这个慢慢用到时再了解。

参考文档:

春江花月夜

基本上每周有1~2次会念《蒋勋说唐诗》 ,年前断断续续地把“第二讲 春江花月夜”给念完了,这首诗好长,全诗共三十六句,每四句一个韵,一共有九次转韵,构成了完整的结构形式。

春江花月夜
唐·张若虚
春江潮水连海平,海上明月共潮生。
滟滟随波千万里,何处春江无月明!
江流宛转绕芳甸,月照花林皆似霰;
空里流霜不觉飞,汀上白沙看不见。
江天一色无纤尘,皎皎空中孤月轮。
江畔何人初见月? 江月何年初照人?
人生代代无穷已,江月年年只相似。
不知江月待何人,但见长江送流水。
白云一片去悠悠,青枫浦上不胜愁。
谁家今夜扁舟子?何处相思明月楼?
可怜楼上月徘徊,应照离人妆镜台。
玉户帘中卷不去,捣衣砧上拂还来。
此时相望不相闻,愿逐月华流照君。
鸿雁长飞光不度,鱼龙潜跃水成文。
昨夜闲潭梦落花,可怜春半不还家。
江水流春去欲尽,江潭落月复西斜。
斜月沉沉藏海雾,碣石潇湘无限路。
不知乘月几人归,落月摇情满江树。

《春江花月夜》的作者张若虚,留下的诗作很少,不过后人提到这首诗,称它是“以孤篇压倒全唐之作”,蒋勋对它的评价也是很高,认为它不仅仅是张若虚个人的才气表现,更是集中体现了初唐时期人的精神前所未有的辽阔,体现了宇宙意识。

在题目的理解上,一个字一个音,而不只是一个词汇,如果把“春江”理解为春天的江水可能是一个错误。春天、江水、花朵、月亮、夜晚,每个名词都可以看作一首交响曲的五个乐章,五个主题,整首诗都在讲自然现象,把人的是非带到大的宇宙空间中去。

所说的宇宙意识,既有“何处春江无月明”中的“千江有水千江月”,也有“空里流霜不觉飞,汀上白沙看不见”中的“空白”状态,更是“江畔何人初见月?江月何年初照人?”的哲学追问。

蒋勋用了12节来讲这首长诗,就不是简简单单地念完三十六句好了,细致又优美的解读,引人入胜,使得文字不再是那么遥远,意境也不再是遥不可及。整个篇章讲完后,小乐对我说:“这首诗我差不多会背了。”没有要求硬记,这大概是最好的效果了,而如果没有蒋勋的讲读,估计很难对达到这样的理解,虽然现在也还是一知半解。

不过就像蒋先生说的:

我小时候背这首诗的时候,从来不知道它到底是什么意思,甚至用毛笔字抄写的时候,也似懂非懂。什么时候懂的呢?可能是在丝路旅行的时候,在新疆看到巨大的月亮从地平线上升起来,忽然想起其中一句。有一年春天我在巴黎,忽然抬头看到前面的一棵树,花瓣全部飘落,一下呆住了,“昨夜闲潭梦落花”这一句就出来了。

也许唐诗就是这样,以我们现在所处的时代,很难再有当时的意境。只不过随着人的成长和经历的丰富,在某一时刻某一场景忽然就冒出了一句“欲说还休”时,倒也是韵味十足。

我问小乐最喜欢诗中的哪一句?
“昨夜闲潭梦落花,可怜春半不还家。”
“为什么呀?”
“嗯,给人一种很凄美的感觉吧。”

趁热打铁建议小乐以《春江花月夜》写一幅书法作品。“如果你手抄过这首诗,与这首诗的情感会有一点点不一样。”小乐欣然应允,原以为这副作品小乐会花数天完成,没想小家伙一气呵成,或许也是源于对这首诗的喜爱吧。

对比一下《般若心经》,一个是甲午年正月初五完成(分数天),一个是甲午年冬,足足一年,小乐的字倒确实是进步了不少。

还赋打油诗一首,倒出乎我的意料,尤其是最后一句“独此一篇夺唐甲”,也算是对它的致敬了。

观《春江花月夜》有感
全诗共有句十八,
胜过花来堪比霞。
更惊奇人张若虚,
独此一篇夺唐甲。

理解Ruby Symbol

过年了还在单位,在看看ROR。简单翻译一下Knowing The Difference Between [:symbol] and [symbol:] in Rails,自己也搞搞明白。


对于Rails新手来说,看到一个冒号一会在前一会在后经常容易迷惑。那么:symbol和symbol: 的区别是什么呢?

符号前的冒号

一个前面带有冒号的符号就是一个Symbol (有点像变量)我们需要使用=>对Symbol赋值。

举个例子,如果我们想复制”Ruby on Rails”赋值给:book符号,我们就写:


:book => "Ruby on Rails"

符号后的冒号

冒号后的符号实际上和之前的是同一回事。区别在于用法,如果:symbol 使用=>赋值,而symbol: 则不需要。

我们看第一个例子,重新用符号后的冒号写一些:


book: "Ruby on Rails"

它和之前的例子相同,都是把”Ruby on Rails”赋值给:book符号。

把一个符号赋值给另一个符号

有时我们会碰到下面的例子:


book: :available

这段代码就是i讲一个变量符号赋值给另一个符号。不过千万小心类似这样的写法Book::Name,这个完全不同,Book::Name表示Name是一个模块名,Book是一个类名。


上面的文章似乎简单化了,Symbol的含义不只此。:symbol是Symbol ,看文档的说明:

Symbol对象用于表示Ruby解释器中的名字和一些字符串,他们可以采用:name和:”string”的语法格式,也可以使用to_sym方法。对于指定的名称和字符串在程序运行期间会创建相同的symbol对象。也就是说无论Fred是一个上下文中的常量、另一个中的方法,或是第三个中的类,:Fred符号在所有三个上下文中都是相同的对象。

而symbol: 则是hash中key/value的一种替换语法格式。


> x = {foo: 1, bar: 2}
=> {:foo=>1, :bar=>2}
> x[:foo]
=> 1

IBM developerWorks这篇理解 Ruby Symbol,第 1 部分 说的更细些,尤其提到使用技巧,在ruby中使用Symbol处理名字可以降低Ruby内存消耗。

典型的使用是在hash中,symbol可以作为key值,效率比使用字符串要更好,因为Ruby对每一次字符串引用都会生成一个String对象。

还有可以做hash参数,普通调用函数的时候往往需要确保参数个数、顺序匹配,而使用hash参数就没有这个问题。Ruby on Rails大量地运用了这种方式,比如:


link_to 'Show', :action => 'show', :id => product

add_column :products, :price, :decimal, 
:precision => 8, :scale => 2, :default => 0

使用hash参数,可以如下定义,前半部分为固定参数,后面是可变参数,或者全部采用hash参数。

理解 Ruby Symbol ,第 2 部分: Symbol 内幕 提到使用:Symbol的方式会创建Symbol对象,保存在符号表中,这是一个全局数据结构,存放了所有Symbol的(数字ID、名字)对,Ruby不会做删除。

文中最后有一句话:Symbol 的特点决定了它的简洁和高效。 Ruby 把它的符号表敞开了给你,在 Symbol 可以更好地发挥作用时,不要吝啬使用 Symbol 。

hexo genereate CSS文件没有更新

刚写了一篇文章发布后,引用部分的内容(blockquote)字体很难看,字又大,还居中,实在无法忍受。

搜了一下,一开始以为是一直以为是hexojs/hexo-renderer-stylus#5 渲染的问题,尝试了不对;后来想是不是还是landscape-plus theme的问题,还特意去开了个issue问问。

其实还是自己的问题,style.css并不是修改后就会自动生成的,手工删除后public/css/style.css,重新hexo generate即可。之前是嫌博客文章太多,每次编译耗时久而懒得折腾。简单地建个目录,搞个测试看到hexo generate生成的文件清单就很容易排除了。

顺便搞搞清楚npm和nvm,npm是针对javascipt的安装包管理器(Node Package Manager),而nvm则用来安装和管理多个node.js的版本,其本身由npm安装。

分级阅读的重要性

从给小乐开始讲故事以来,我一直担负着找书的任务,从最初的儿歌、绘本到现在的金庸全集、埃及守护神之类的。要找到适合孩子的书,这个恐怕是没有标准答案的,每个孩子的兴趣可能完全不同。

“什么是适合呢?”最近一直在思考这个问题。以前的想法无非就是年龄段,是否有不适合的情节(比如以前说到过一本小乐在枫林晚一眼看中的《安吉拉•卡特的精怪故事集》,一直都没敢买),是否是小乐感兴趣的(比如历史),或者希望能扩展阅读范围的(比如自然科学),然后在合适的时候推荐合适的书给她。象《西游记》,版本众多,我们就从动画片、绘本、青少版一直到完整版,相同的故事,不同的阅读难度逐层演进,我想很少有孩子从一开始就是大部头开始看的。家长们可千万别想我干脆买本全本的给孩子不就行了,那可能会吓到孩子的,象《水浒》小乐至今仍不愿意看开始征讨方腊之后的情节。

那么“合适”又如何量化呢?(理工科的总是希望能有个一劳永逸的方法啊)直到最近开始买一些英文原版的书,以及小乐在使用Raz-Kids进行英文学习时,忽然发现原来这“合适”真是有量化标准的,这个方法就是“分级阅读”。

分级阅读是Irene Founts和Gay Su Pinnell提出的一个突破性阅读教学方式,以分级的方式进行小组阅读知道,称为Guided Reading(Founts & Pinnell, 1999)。

如果有使用Raz-Kids学习英语的朋友,会看到它的阅读级别是从“aa-Z”,一共分为27级,每个小朋友开始学习时,可以先由老师指定适合的级别。

我们看一下这张图:

除了第一列的级别从“aa-Z”外,后面还有对应的年龄、年级,之后还有”Fountas & Pinnell”, “Reading Recovery”, “DRA”, “PM Readers”, “Lexile”,这些都是国外不同的阅读分级方法体系。典型分级方法的有A-Z分级法(GRL)、年级体系法(GEL)、数字体系法,比如”Fountas & Pinnell”就是A-Z分级法,就是她们提出的分级阅读;而RR, DRA, Lexile则是数字体系法。

重点说说Lexile兰斯分级法:

兰斯阅读框架是经过二十多年研究,由 “MetaMetrics” 公司的著名心理测量小组开发出来的。兰斯阅读框架的目标是开发一套衡量学生阅读水平和标志文章难易程度的标准,使用这一标准一方面可以方便学生测试和确定自己的阅读水平;另一方面,给出版物标志兰斯难度分值后,学生可以找出符合自己阅读难度的图书去阅读,以便循序渐进,步步提高。目前,兰斯分级已经发展为全美最具公信力的阅读难度分级系统。

读者的兰斯分值是从阅读测试或项目中来的。其分值是一个数字后加“L”,其间隔为“5L”。兰斯分值从最低5L到最高2000L。一位读者的兰斯分值如果在5L或低于“5L”,则为入门读者,一般人的兰斯分值在200L至1700L之间。

利用兰斯分值,就可以根据自己的阅读程度级别找到合适的书阅读,而不是按照年龄和年纪一刀切,既有一定的挑战,又避免阅读挫折。循序渐进,就能持续养成阅读的习惯。以小乐目前在看Raz-Kids中的O级别来看,Lexile分值相当于601-650,按Learning A-Z中说明是7-8岁二年级;而对照Lexile分级和中国学生英文阅读能力对照表,则差不多是美国小学三年级,中国初中三年级(我理解这个差异可能和Raz-Kids的选编文章有关)。而象之前看的《Charlotte’s Web》是680L,《Harry Potter and the Sorcerer’s Stone》是880L。

一本书想确定它的难度是多少,你可以在Lexile网站上通过find a book找到书籍,它会告诉你相应的兰斯分值,有了这个利器,就能基本确定一本书孩子是否能看下来了。

当然批评的声音也是有的,我自己觉得Lexile分值衡量方法最大的缺陷只能评估书的难易程度,无法判断一本书的思想性和艺术性,这时候还是需要家长朋友自己衡量和评估的。你的孩子你做主嘛!不对,孩子大了,应该是你也做不了主,哈哈。

人的要素始终是无法排除的,需要结合分值衡量和社交推荐,我想这样的分级阅读就更靠谱了。

参考文章:

Horrible histories中的历史年代


上次说了最近全家喜欢看的Horrible Histories,其中有几个固定专题,分别是“野蛮的石器时代”、“可怕的古埃及”、“绝妙古希腊”、“腐朽的古罗马”、“绝妙的撒克逊人”、“凶残的维京人”、“卑微的中世纪”、“糟糕的都铎王朝”、“卑劣的斯图亚特”、“华丽的乔治王朝”、“邪恶的维多利亚时代”、“可怕的一战”、“可悲的二战”,其中石器时代、古埃及、古希腊、古罗马的先后顺序一目了然,但对于英国王朝的历史可能大家就不一定那么清楚了。

以前在好玩的英国历史时曾给小乐整理过一个材料,简单地说过一些,从罗马帝国征服不列颠岛后,分别经过了罗马人 - 盎格鲁/撒克逊人 - 维京人 - 诺曼人,建立了诺曼王朝,之后是金雀花王朝、都铎王朝、斯图亚特王朝,不过对应到Horrible Histories的各个专题,发现基本把整个英国的各历史时代(包括文明的传承)都覆盖了。

前面列专题时已经是按时间的先后次序来说,英国或者说欧洲的文明主要来自古希腊。古埃及是最早的文明,从公元前32世纪左右时美尼斯统一上下埃及建立第一王朝开始,终止于公元前343年波斯征服埃及;而公元前332年又被亚历山大征服;之后到了公元前30年成了罗马行省。古希腊是指从希腊历史上公元前8世纪的古风时期开始到公元前146年被罗马共和国征服之前的这段时间的希腊文明。埃及和希腊都被罗马灭了,英国也不例外,在公元前1世纪被罗马帝国入侵。之后的年代差不多是这样的:

  • 43~410年 罗马时期的不列颠
  • 410~1066年 盎格鲁-撒克逊英格兰
  • 然后是英格兰王国时期,有1066~1154年 诺曼王朝、1154~1485 金雀花王朝、1485~1603 都铎王朝、1603~1707 斯图亚特王朝。
  • 英格兰王国后的名称开始出现我们熟悉的大不列颠了,大不列颠王国、大不列颠及爱尔兰联合王国、大不列颠及北爱尔兰联合王国。可能在我们来看都一样,不都是英国嘛,其实大不同,这是涉及的就是和苏格兰、爱尔兰合并和分离了,国旗也跟着多姿多彩起来。

回过来来看“Horrible Histories”中的各阶段:

首先是“绝妙的撒克逊人”、“凶残的维京人”、“卑微的中世纪”,在欧洲历史上,“中世纪”指公元5世纪到15世纪,自西罗马帝国的崩溃到文艺复兴运动和大航海时代之间的时期,对应到英国历史,应该就是差不多罗马之后到都铎王朝前的阶段。

接着是“糟糕的都铎王朝”,典型代表是亨利八世、血腥玛丽、伊丽莎白一世;“卑劣的斯图亚特”,斯图亚特王朝原先是统治苏格兰的,在都铎王朝时双方联姻,由于伊丽莎白一世没有后裔,使得苏格兰的国王同时成了英格兰的国王。斯图亚特王朝中代表人物是被砍头的查理一世,大不列颠王国的安妮女王。

安妮女王没有后代,王位给了信奉新教的德国人乔治一世,“华丽的乔治王朝”说的就是那四个唱着“Born 2 rule”的乔治一、二、三、四,乔治王朝之后是“邪恶的维多利亚时代”,被认为是英国工业革命和大英帝国的峰端。它的时限常被定义为1837年-1901年,即维多利亚女王的统治时期。这两个时代均属于汉诺威王朝。

最后说的是第一次、第二次世界大战,分别1914年~1918年和1939年~1945年,两次全球性的军事冲突。此时的英国王朝已经进入了温莎王朝,也就是现在的伊丽莎白二世所属的王朝。

好不容易整明白这些王朝的次序,接下来可以看“Horrible Histories”了。

给恶魔果实分类

记得少年商学院曾经有个趣课题讲分类的,一篇“日本学生如何用‘分类’训练思维方式”,说的是日本小学教材中如何教孩子们学习分类,一幅大大的图都是猫,然后让孩子们按各自想法分类,常规的比如颜色、头巾、尾巴等等,而有趣的则可能会根据“胡子是否卷”来进行分类。文章提到分类可以看到人的思维方式,另外不同的分类方法也会让孩子学会尊重,尊重不同意见的人。

一篇“不输日本孩子,看中国小学生通过‘分类’训练观察力”(标题不好,何必要比),说的是在国内小学生们的瓶子分类挑战,也有好多创意,比如按服务热线400/800分类的、是否有清真标志的、能否滚动的,让人对孩子的思维方式大加赞赏。我看了后,一直觉得非常有意思,想留着做为下次精灵社的活动。

不过就像“分类”是一种方法,选择什么来分我们大可自己随意选择,可千万别限制自己的思维,觉得没啥好分的呀,孩子的潜力可是无限的。

最近全家的兴趣围绕的都是《海贼王》,自然也可以挖掘无穷的课题。继家庭SBS、漫画人物、每天看英语换一本海贼王,和小乐一起玩了一个给恶魔果实分类的游戏,首先我们在白班上列出“阿拉巴斯坦”篇章结束后的所有恶魔果实以及相应的人物,一共有20个,如路飞的橡皮之果,乔巴的变人之果,艾斯的燃烧之果,瓦波尔的吞吞之果,Mr 4的枪的变狗之果等等,详细参见图。

有什么分类方法呢?可能看过海贼王的朋友第一印象就是自然系、超人系、动物系,除此之外你还会想到什么,要是想不出来的话,嘿嘿,说明你是大人,大人的想法就是奇怪(小王子语)。

我和小乐你一言,我一语,一共列了17种分类,其中有不少分类方式还是很有意思,我们可以一起看看。

小乐给出的第一个分类方式是“滑滑”、“吞吞”、“牛牛”、“沙沙”、“花花”之果是一类,有意思吧,完全按名字的分类方式,和果实能力无关;
普通的分类除了按动物系、变化形态,我们又选择了按吞食果实的人的职业、性别、地区、正派还是反派人物来分类。
象分类十二,路飞和艾斯一组(名字中含有D的意志),Mr一组,Ms一组,其他一组,这是按姓名来分。
象分类十三,燃烧之果、融化之果、烟雾之果一组,其他一组,这个意思有点难猜,这是乐妈猜谜无意中无意提出来的,因为前者的果实温度比较高,意想不到吧。
还有分类十六,佩鲁的雄鹰之果单独一组,为什么呢?因为就他死了。

分类的游戏从一开始觉得很简单,分个类还不容易吗,到中间觉得好像没啥可再分了,再到一点突破后,又脑洞大开,思如泉涌。每一个新分类方式出来,都会让我们一喜,呀,居然还可以这样分呀。

我总结了一下我们的分类方式:

  • 最普通的也是大家最熟悉的自然是书中给我们灌输的自然系、超人系和动物系的组合方式。
  • 纯按名称语文文字的分类方法。
  • 从果实过渡到吞食果实的人之后诞生的不同分类方法。
  • 而这里又有在上述三种分类中的奇思妙想型,比如温度、人死了,还有Mr 2一个顶全部,因为他可以变出其他任何人的脸。

有意思吧,不妨大家在家和小朋友试试吧。不知道分什么,打开小朋友的铅笔盒,抓一把笔就可以了。

每天赚一本海贼王

玩SBS的时候,曾提过《海贼王》还有意想不到的功效,这功效到底是什么呢?我们来扯扯。

这就要先说到小乐的英语学习上,小家伙平时的培训班采用的教材是《新概念英语》,日常会听听有意思的英语故事,比如《夏洛的网》、《哈利波特和魔法石》,但总觉得无法在日常生活中能运用进去,缺少环境,而那些则是课程。简单地说,不能做到“润物细无声”。

既然小乐最喜欢阅读,我们想到的方法还是希望通过阅读来逐步提高英语,能象中文一样去在平常看一些英文的原版书籍。一方面我买了一些有趣的英文原版,比如Roald Dahl系列的《查理和巧克力工厂》等、《维尼小熊》;另一方面自己也开始拿一些看,能有所影响和互相交流。但面临的一个主要问题是英文书籍的词汇量和故事有趣性之间的冲突,如果是一些童书,比较易懂,但会觉得幼稚,很难吸引已经在阅读《射雕英雄传》的小乐;而如果不是童书,引人入胜的故事则往往需要有一定的词汇量,面临的挑战会影响阅读的兴趣。

这个问题困惑了我很久。

选书还是很关键,英文其实是有分级阅读的。要选到合适的书,故事不失有趣性,而难度上则最好是在自己现有水平上适当提高。

最近在选书上,我就使了一个小花招,之前小乐超喜欢的是埃及守护神、波西.杰克逊系列,而该作者雷克.莱尔顿同类型的还有一套奥林匹斯英雄系列,小乐一直记挂着,我却一直没买。还偏偏先买了一本英文原版的《The Son of Neptune》

好书有了,内容也是小乐超想看的,但翻了两页后就放下了(我自己看也难:-()。怎么办呢?继续动脑筋,我和乐妈不约而同想到了一招《海贼王》,还有什么能比《海贼王》更吸引人的呢,她的目标可是要在2015年把全套海贼王给看完,到目前为止有70多本。于是我们就制定了一个小小的激励计划,看《The Son of Neptune》赠送海贼王漫画。

最初方案是看书过程中查阅了30个英文单词,给一本漫画,一开始还不错,阅读中遇到一些不熟悉的单词,慢慢积累起来去查询含义,几天换取一本漫画;但后来小乐目标明确,直冲单词而去,有单词就查,导致看的内容不多,就很快累计30个单词换漫画来了。于是乐妈和小家伙商议调整规则,按一个章节一本漫画来换算,就基本可以保证阅读一定的连续性了。

就这样,小乐至少已经看了一个多月的英文《The Son of Neptune》,从原先硬啃到现在逐步熟悉了故事中的人物和情节,也可以说是渐入佳境了吧(她自己评价说是没有中文过瘾),我们也无需再要去提醒她看。一旦《海贼王》看完了,她自己就要迫不及待地拿起《The Son of Neptune》,赚分去了。到今天《The Son of Neptune》看到了二十七章278页,过一半了,而《海贼王》呢也毫不客气地看了三十本,这架势全套《海贼王》也差不多只能看一本《The Son of Neptune》,后面还得看波西.杰克逊奥林匹斯英雄系列的魅力了。

不过我认为啃完《The Son of Neptune》对小乐的挑战和意义还是挺大的,之前虽说看了原版的《夏洛的网》、《哈利波特和魔法石》,但都看过中文,熟悉故事情节,而《The Son of Neptune》则对她来说是全新的故事,完全需要依靠她自己通过英文去理解。另外从书本的厚度来说,500多页,也确实是一项挑战,能够完成,一定会给她带来更足的信心。“原来英文也不过如此”,是不是可以这么说呀?

一份耕耘一份收获,只不过在兴趣和游戏中会带来更多的快乐吧。

不去了 VS 能坚持吗

小乐中午觉得有点肚子痛,乐妈问:“是胃有点不舒服吗?”
“是的。”
妈妈的心就痛了,于是说:“那我们下午的钢琴课就不去上了。”
小乐略一沉吟,回道:“好吧。”
故事的结尾就是公主幸福地看起了。
我在一边一直没说话,但总觉得有点不对劲。想中途插嘴,一方面已经决定的再反悔不妥,父母两人的意见不一致也带来困惑,尤其这对我这个慈爸形象是大大的不利;-)。

过后心想乐妈的问话还是有点太草率了,母亲常犯爱心泛滥的错误,容易造成孩子面对困难不够坚持的态度,而以后呢,可能又会说自己的孩子意志不够坚定,恰恰忽略了当初的源头是怎么开始的。

我想最简单的其实可以不说,听就行了,嗯嗯几句,等小乐的下文。按现在母女的和睦程度,小乐如果到了很难受无法上课的程度,完全不必担心她不敢表达出来

如果要说的话,是否可以换个说法:“下午的钢琴课能坚持吗?”效果也会截然不同。或许小乐得到了妈妈的关心,就高兴的上课去了,而如果难受的厉害,小乐会思考后说不去,但这和之前的情景就完全不同,孩子也不会是轻易放弃的感觉。两种问话,前者其实是给了倾向性的答案,后者才会让孩子去真正的选择。

《心理学与生活》一书中有个例子,一个杯子倒了半杯水,问“杯子的水是半满的还是半空的?”如果从一个空杯子逐步加到一半,你会觉得是半满的;如果从一满杯水导出一半,你可能会觉得是半空的。处于不同的环境,对相同的事物感受是不同的。

随之带来的效果也会不同,在实际发生的“不去了或能坚持吗”中,可能培养的也会是孩子两种不同的态度。我们要找到自己日常生活中一些无意可能会犯的表达上问题,不好找,因为都是爱,而且自己也习惯了,不会觉得是问题。这时夫妻双方观点上的冲突倒会是个好的切入点,只是需要双方能拥抱冲突,别伤感情就行。