rubyforrails:Ruby 和 Rails 的国际化和本地化技术

开始的前  有关本教程  在本教程中您将学习:  Gettext 概述和 Ruby-Gettext 包安装;  第个国际化 Ruby hello_i18n;  如何创建 POT 文件翻译 PO 文件并最终生成 MO 文件;  如何国际化和本地化个 Rails 应用;  目标  通过本教程学习您不仅可以了解 Gettext 基础知识而且可以掌握如何使用 Ruby-Gettext 包对 Ruby 和... [阅读全文]

rubyonrails:攻克CakePHP(PHP中的Ruby On Rails框架)

CakePHP框架首页: http://www.cakephp.org/  下载后导入工程中目录结构如下图(使用版本:1.1.19.6305)    ?phpecho$html-tagErrorMsg(Post/body,Bodyisrequired.)?  /p  p    ?phpecho$html-submit(Save)?  /p/form  测试URL: http://localhost... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十)- ActiveRecord基础(Boolean属性)

些数据库支持boolean类型而另些则不支持这使得Active Record要抽象boolean类型变得困难例如如果数据库不支持boolean类型有开发者使用char(1)来替代而内容使用“t”和“f”来表示true和false而另外些开发者使用eger类型0是false1是true即使数据库支持boolean类型在内部也许还是使用0和1来存储  在... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十一)- ActiveRecord基础(存储结构化数据)

有时能够在某个属性中直接存储任意ruby对象是很方便种办法就是Active Record支持序列化将个ruby对象变为个YMAL串并且将这个串存储到属性对应数据库字段中在数据库定义中这个字段必须为text类型   Active Record将数据库中Char型和text型映射为ruby型所以如果我们需要告诉Active Record使用序列化功能例如我们想知道某个客户进行最后5次消费我们创建个含有... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 2)- ActiveRecord基础(主键和ID)

也许你已经注意到了,在我们前面代码中数据库定义里都使用了个eger型字段id作为主键这是Active Record个约定   或许你要问为什么不用订单编号或者某个有意义列来作为主键呢?使用id作为主键有个很重要原因就是如果使用具有内在格式主键话随着时间推移有可能其中规则也会变化例如使用ISBN号码来给book表做主键毕竟ISBN号码是唯但是有可能当本书写完后美国出版业已经发展了并且在所有ISBN号... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 3)- ActiveRecord基础(连接数据库)

Active Record抽象了数据库连接概念帮助应用来处理底层数据库链接细节作为替代Active Record使用通用将细节委托给组数据库适配器   可以使用establish_connection( )思路方法来制定连接下面例子创建了个mysql数据库连接数据库名字是railsdb,服务器Host名为dbserver.com用户名为railsuser密码为railspwActiveRecord... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 4)- ActiveRecord基础(创建记录)

Active Record使得实现CRUD数据库基本操作变得简单在下面几节里我们使用Mysql数据库中orders表来进行CRUD操作这次先看创建(Create)   我们假想有个Model名为Order: Order ActiveRecord::Baseend  在面向对象模型里表对应类表中行对应类对象我们可以通过创建个类对象来创建条记录对orders表我们可以使用Order.New思路方法来... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 5)- ActiveRecord基础(读取记录)

读取记录包括指定那些特定数据是你感兴趣你给Active Record指定标准Active Record再返回给你些对象其中包含了符合条件记录数据   在个表中检索数据最简单办法就是指定主键任何个Model都支持find思路方法该思路方法支持个或多个主键值如果只指定了个主键将会返回对应对象如果指定了多个主键给find思路方法该思路方法组相应对象注意当没有任何符合条件数据时候将会抛出个RecordNo... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 6)- ActiveRecord基础(SQL和Active Record)

想象下Active Record是如何处理SQL我们来看看find思路方法:conditions参数时候像这样:find(:all,:conditions=…)这里:conditions参数决定了find思路方法将返回哪些记录它相当于Sql语句where部分例如要获取所有名字为Davepay_type为po订单我们这样写: pos = Order.find(:all,:conditi... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 7)- ActiveRecord基础(强大的find思路方法)

现在我们知道如何指定条件现在我们来看看find思路方法支持些其他设置   首先理解find(:first,…)思路方法是非常重要该思路方法在同样conditions设置下和find(:all,…)思路方法生成同样sql语句区别的处仅在于只返回条记录在时候种参数为:first另种为:all  find思路方法执行个select from这样sql语句:all标记指定返回表... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 8)- ActiveRecord基础(动态查询)

数据库上最常运行查询莫过于根据指定条件返回符合结果集查询可能是返回所有名字为‘dave’订单或者是某个博客上所有标题含Railspost在很多其他框架和设计语言中你需要创建sql来执行查询Active Record利用了ruby语言所包含动态能力来做这些事   例如我们Order Model包含了诸如nameemailaddress这样属性我们可以使用这些名字对应find思... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 4十 9)- ActiveRecord基础(行数和再加载数据)

Active Record提供了两个思路方法来获取符合条件记录条数:count和count_by_sql例如: c1 = Order.countc2 = Order.count(["name = ?", "Dave Thomas"])c3 = LineItem.count_by_sql("select count(*) " +" from line_items, orders " +" where... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十)- ActiveRecord基础(更新记录)

前面了解了检索思路方法这次来看看Active Record怎样更新数据库中记录   如果你有个Active Record对象(或许对应于order表),你可以通过save思路方法将它写道数据库中去如果这个对象是先前从数据库中读取出来save思路方法将会更新既有记录否则将会新建条记录  如果条既有记录被更新Active Record将会用它主键和来匹配内存中对象Active Record对象中属性被... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十一)- ActiveRecord基础(并发处理)

在学习Rails中并发处理处理前我们先简单了解下并发处理概念  在有多个处理同时访问同个数据库应用中可能会出现这样情况个处理更新了数据库中行而使得另个处理中持有数据变得陈旧了例如A和B先后从数据库中提取了相同数据并都做了修改这时B先将自己修改更新会数据库稍后A将自己修改更新回数据库这时将会覆盖B所作修改当B再次提取数据库后看到是A修改结果而不是自己  个解决办法就是将更新表或者行进行锁定防止其他进... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 2)- ActiveRecord基础(删除记录)

Active Record提供了两种方式进行删除操作首先有两个类级别思路方法delete和delete_all这两个操作处在数据库层面上delete思路方法接收个或组和数据库对应iddelete_all思路方法删除所有符合指定条件记录如果没有指定条件就会删除所有记录思路方法返回值和具体数据库适配器相关例如oracle返回被影响行数如果没有记录被删除也不会抛出异常 Order.delete(123)... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 3)- ActiveRecord基础(表关联)

很多使用数据库都包含有多个表而且通常些表的间还有关联关系订单常含有多个条目而个条目又关联到种商品个商品可能又属于多个商品分类个商品分类里又包含有多个区别商品  在数据库中这些关联表现为使用主键值把表关联起来也就是外键但是这属于底层范畴我们需要处理Model对象间关联而不是数据库中列和键如果个订单含有多个条目我们需要有办法来维持处理它们关系如果个条目引用到种商品我们或许想这样做:price = li... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 4)- ActiveRecord基础(指定关联关系)

Rails支持 3种表间关联关系对对多多对多你需要在Model中加入声明来标识这些关联:has_onehas_manybelongs_tohas_and_belongs_to_many  对关联关系可能存在于象订单和发票这样关系个订单只能有个发票在Rails中我们这样指明: Order ActiveRecord::Basehas_one :invoice. . . Invoice Active... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 5)- ActiveRecord基础(一对一关联关系)

对关联或者更正确说是对零或对关联是通过外键引用到另外张表中至多条记录实现下图描述了orders表和invoices表关系:" _disibledevent= trueActive Record将自动删除从表中关联记录  :order指定了在记录被返回前怎样进行排序我们会在后面有关has_many内容里详细讨论... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 6)- ActiveRecord基础(一对多关联关系)

对多关联可以使我们表示组对象例如个order可以包含有任意多个line item在数据库中所有line item记录都通过外键关联到特定order   在Active Record中通过在父对象中has_many来定义到子对象关联在子对象中使用belongs_to来指定父对象我们已经在上篇中了解了belongs_to声明实际上在对多情况下和对是相同所以我们来了解has_many声明" _disib... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 7)- ActiveRecord基础(多对多关联关系)

在Rails中多对多关联通过在关联表对应类中声明has_and_belongs_to_many来实现   在数据库中多对多关联使用中间表来实现表中包括关联表主键Active Record假定这个中间表名字是由关联表名字根据字母顺序串联起来得到例如关联表为categories和products中间表名字就是categories_products" _disibledevent= Time.now)e... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 8)- ActiveRecord基础(自关联)

或许存在这样情况在个表中条记录关联到表中另条记录例如公司中每个雇员都有上级和下级而他们同时又是雇员在Rails中你可以这样使用Employee类: Employee ActiveRecord::Basebelongs_to :manager,:_name = "Employee",:foreign_key = "manager_id"belongs_to :mentor,:_name = "... [阅读全文]

rubyonrails:Ruby on rails开发从头来( 5十 9)- ActiveRecord基础(预加载子记录)

预加载子记录讨论问题和“延迟加载”是相同通常Active Record会推迟从数据库中加载子记录直到你需要他们例如通过Rdoc中例子我们假定博客有个Model像下面这样: Post ActiveRecord::Basebelongs_to :authorhas_many :comments, :order = created_on DESCend  如果我们遍历所有po... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)( 8)-使用Session创建购物车

在前面内容里我们演示了怎样构建个商品列表这次我们在前面内容基础上构建个简单购物车  1.     首先我们要来创建个保存客户购物信息表:  数据库脚本:drop table exists line_items;create table line_items (id not null auto_increment,product_id not null,quantity not null d... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)( 9)-给购物车添加错误处理

在上次内容里我们演示了怎样构建个简单购物车这次内容非常简单给购物车添加处理  对于Web系统来说并发处理是个无法回避问题我们来模仿个并发冲突情景:  1.     用户进入购物车页面看到共有5种商品  2.     管理员在后台维护商品列表将5种商品中种删除掉  3.     客户选中被删除掉商品添加到购物车  在这种情况下如果不作任何处理话将会产生个异常而我们要作是处理这个异常给用户显示个商品不... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)(十)-清空购物车和格式化金额

在上次内容里我们给购物车添加了处理这次来实现清空购物车和金额格式化处理  到现在我们还没有给显示购物信息列表页面“empty cart”链接添加任何处理我们首先来实现这个功能:  1.    在Store_Control.rb文件中添加empty_cart思路方法:def empty_cartfind_cart.empty!flash[:notice] = Your car... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)(十一)-订单(Order)

在上次内容里我们实现了清空购物车和金额格式化处理这次实现订单模块  1.     首先我们要在数据库里创建Order表创建表Sql如下:create table orders (id not null auto_increment,name varchar(100) not null,email varchar(255) not null,address text not null,pay_ty... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)(十 2)-订单(Order)

在上次内容里我们创建了订单Model和表示页面这次继续编写CHECKOUT处理  1.    在checkout.rhtml页面上有个CHECKOUT按钮上次还没有给它编写处理代码现在在store_controller中添加save_order思路方法代码如下:def save_order@cart = find_cart@order = Order.(params[:order])@order.... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)(十 3)-订单(Order)

在上次内容里我们编写了CHECKOUT处理这次我们将显示购物车和订单放在个页面上表示这样用户在下订单时候就可以很方便地看到自己购物情况  1.     修改checkout.rhtml文件只要添加句代码:%= error_messages_for("order") %%= render_component(:action = "display_cart") % ――这句 %= stylesheet... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)(十 4)-送货处理

在上次内容里我们完成了订单编写这次我们模拟个简单送货页面给这个购物车管理员用  1.     首先我们修改order表给他添加个字段shipped_at:create table orders (id not null auto_increment,name varchar(100) not null,email varchar(255) not null,address text not nu... [阅读全文]

rubyonrails:Ruby on rails开发从头来(windows)(十 5)-添加用户

从这篇开始我们来实现组用户管理功能首先是添加用户   1.     首先我们要创建个表保存用户信息并且生成个对应model  创建表脚本在phpAdmin里执行就可以了:create table users (id not null auto_increment,name varchar(100) not null,hashed_password char(40) null,primary ke... [阅读全文]
1 共1条 分1页