`
chenjinlai
  • 浏览: 69847 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

peepcode-rails2 读书笔记...

阅读更多
class Recipe < ActiveRecord::Base
  validates_numericality_of :isdn,:greater_than=>5000,:allow_blank => true
  belongs_to :category
end
填表单时,首次创建不限制,但是修改的时候会要求isdn有一个数值范围

 4;35;1mCategory Load (0.016000)   SELECT * FROM categories WHERE (categories."id" = 1)
 4;36;1mCategory Load (0.000000)   SELECT * FROM categories WHERE (categories."id" = 2)
 4;35;1mCACHE (0.000000)   SELECT * FROM categories WHERE (categories."id" = 1)
在单个请求内,会以select语句为key,自动cache相同的select语句(这个特性,好像不是那么有用)

class CreatePosts < ActiveRecord::Migration
  create_table :posts do |t|
    t.integer :user_id, :category_id, :null => false
    t.text    :body
    t.timestamps
  end
  def self.down
    drop_table :posts
  end
end
创建表简化了不少,null应该默认不出现,否则老是异常...

stylesheet_link_tag "application", "forms", :cache => true
据说只要加了cache就自动合并到一个all文件里面...这个特性不错,再下一步就是ZIP压缩了

<% for post in @posts do %>
  <%= render :partial => 'article',
             :layout => 'article_simple',
             :locals => {:article => post} %>
<% end %>
partial是可以反复渲染的,现在一批partial能套在一个局部的layout上面了...

map.resources :categories do |t|
  t.resources :recipes
end
对应categories/2/recipes 这类的url,restful风格

class PostsController < ApplicationController
  rescue_from(ActiveRecord::RecordNotFound) do |exception|
    render :file => '/bad_record'
  end
  rescue_from NoMethodError, :with => proc do |e|
    render :text => e.message
  end
end
更简单的404页面或者错误处理...

class AdminController < ApplicationController
  before_filter :authenticate
  def authenticate   
    return false if (session[:login_tries].to_i > 3)
    if(@user = authenticate_with_http_basic { |name, pass|
                 User.authenticate(name, pass)
               })
      session[:login_tries] = nil
      return true
    else
      session[:login_tries] = session[:login_tries].to_i + 1
      request_http_basic_authentication
    end
  end
end
基本的http用户验证,管理员后台登录...

helper :all 默认加载所有的helper...

config/initializers 自动加载默认启动配置...

rake routes列表当前的url路径

db:create db:reset db:rollback db:migrate

@author = Author.find_by_name 'jim'
@articles = Post.paginate_by_author_id(@author.id,:page => params[:page])
新的分页的方法...

yaml_contents = File.open("#{RAILS_ROOT}/config/mailer.yml")
mailer_options = YAML.load(yaml_contents)
ActionMailer::Base.smtp_settings = mailer_options
在environment里面这么写,然后添加邮件配置信息到mailer.yml~

:address: "smtp.example.com"
:port: 587
:domain: "smtp.example.com"
:user_name: "test@topfunky.com"
:password: "not-the-real-password"
:authentication: :plain

接下来竟然是几十页的svn上的changelog...囧


--------------
chenjinlai
2008-04-25

分享到:
评论

相关推荐

    Code Review&JRuby on Rails

    通过阅读《peepcode-code-review.pdf》,开发者不仅可以提升代码审查的专业技能,还能了解如何在Rails项目中利用JRuby这一强大的工具,以实现更高效的开发和更优质的代码。这份资料对于任何希望提升团队协作效率和...

    java6.0源码-campus:RubyCommunityCollege.com的主网站

    Railscasts、Peepcode、博客、电子书等网站上存在的所有优秀的 ruby​​ 培训整合到一个应用程序中,以帮助开发人员集中精力成为最好的开发人员。 设置 应用配置 要开始使用 Campus,您需要设置应用程序配置并设置您...

    ember_restaurant:peepcode 启动 ember

    2. `config`目录:存储配置文件,如环境变量(development.js, production.js)。 3. `public`目录:存放静态资源,如图片和字体。 4. `tests`目录:测试用例,确保代码质量。 5. `vendor`目录:第三方库或自定义...

    fantasyhub:提供给@wycats 和@tenderlove 的 PeepCode PBP 挑战的 Web 应用程序背后的业务逻辑

    每周发布 1 个 15 分钟的演员表以及 2 分钟的 Ruby 或 2 分钟的 Rails 截屏视频! 幻想中心 这是发布给@wycats 和@tenderlove 的PeepCode 的PBP 挑战的Web 应用程序背后的业务逻辑,这是我的隔离、测试驱动的功能...

    Git Internals (PDF 英文版)

    In this PDF, Scott Chacon goes even further to explain the distributed filesystem behind the popular source code management system. ...详细介绍在此:http://peepcode.com/products/git-internals-pdf

    Free-Git-Books:从Git学习书籍| GitLab | 的GitHub

    书籍清单您可以在此仓库的夹中找到以下列出的所有书: 使用GitHub构建工具-自定义您的工作流程 Git-学习使用Git的版本控制-分步式的Ultimate初学者指南 Git最佳实践指南 实践中的Git Git内部-PeepCode Git Pocket ...

    sinatra_app_with_datamapper:具有良好实践的简单 sinatra todo 应用程序示例。 Thx Peepcode for this nice code!

    依赖关系 使用gem install命令gem install 辛纳特拉 dm-核心 dm-时间戳 do_sqlite3 dm-sqlite-适配器 dm-迁移 授权 ================ Sinatra 和 DataMapper 警告:这段代码很难,这个想法再次不是理解所有内容并...

    oh-my-zsh-themes:图片使主题选择更加轻松

    )我无法获得linuxonly , macovsky-ruby , mira , peepcode或pure主题的不错的屏幕截图。 您可以在我想象的上查看它们。 3den 阿本 疯狂的 充实的 无知者 尽管我已尽力而为,但仍无法使vim-powerline的修补字体...

    dotvim:我如何配置一个真正的文本编辑器

    .vim 我将~/.vim目录符号链接到此仓库。 对于~/.vimrc和~/.gvimrc 。...)了解更多有关PeepCode的信息如果您想了解有关Vim的更多信息,我衷心推荐这些窥视密码Pluralsight直播: 但是,请不要相信我。 请查看。 ;)

Global site tag (gtag.js) - Google Analytics