1、尝试向订阅者数据库表和用于提交订阅者数据的表单添加列。当这些额外的值提交到创建操作时,你将如何保存它们?
在 Rails 应用中,若要保存表单提交的额外值,可在控制器的 create 动作里修改创建新订阅者对象的代码。
在 SubscribersController 的 create 方法中,当前代码为:
@subscriber = Subscriber.new(:email => params[:email])
若添加了新字段,如 name 和 phone ,则可修改为:
@subscriber = Subscriber.new(:email => params[:email], :name => params[:name], :phone => params[:phone])
在表单中添加对应输入字段,如:
<input type="text" name="name" />
<input type="text" name="phone" />
提交表单时, params 数据结构会包含这些额外值,这样就能保存到数据库。
同时要确保 Subscriber 模型允许这些字段被赋值,可在模型中使用 attr_accessible 方法(Rails 4 及以上版本使用 strong parameters )。
2、我们在控制器代码中使用了一些简单的 if/else 条件逻辑。尝试根据 @error 和 @success 变量的值,在视图中有条件地显示错误和成功的
标签。
可在视图文件里运用 if/else 语句来依据 @error 和 @success 变量的值,有条件地显示错误和成功的 <div> 标签。示例代码如下:
<% if @error %>
<div class='error'>错误信息显示</div>
<% end %>
<% if @success %>
<div class='success'>成功信息显示</div>
<% end %>
这里假定有 error 和 success 类用于样式设置,可依据实际情况调整。
3、在交互式 Ruby 解释器(IRB)中,尝试对 Ruby 字符串调用 methods 方法。这会对对象进行反射,列出该对象能响应的消息。尝试调用各种方法,看看对字符串还能做些什么。
在 IRB 中,用户可输入字符串变量并调用 methods 方法查看能响应的消息,再调用不同方法探索字符串操作。例如:
-
先创建字符串变量:
ruby str = "example" -
然后输入以下命令查看方法列表:
ruby str.methods -
之后可尝试调用如
str.upcase等方法:
ruby str.upcase

最低0.47元/天 解锁文章
952

被折叠的 条评论
为什么被折叠?



