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

Action Record 转载)

阅读更多
1、 一个实变量由@开头,它的范围限制在 self 对象内.两个不同的对象,即使属于同一个类,也可以拥有不同值的实变量.从对象外部来看,实变量不能改变甚至观察(比如, Ruby的实变量从来不是公用的),除非方法由程序员明确声明.像全局变量一样,实变量在初始前的值是nil.
Ruby的实变量用不着声明.这暗含着对象的弹性结构.实际上,每个实变量都是在第一次出现时动态加入对象的.
(实变量可以被前台页面访问)

2、scaffold的用法
2.0以后下是用 script/generate scaffold ModelName [field:type, field:type]
在1.2.6之前我们可以通过./script/generate scaffold product admin 来建立一个Post的模型和对应的admin控制器
但是在2.0以后使用./script/generate scaffold product [title:string]命令后,会建立一个product的模型和一个product的控制器。就是根据rails命名约定自己加的。

3、link_to(链接)
  link_to"编辑",:action=>"edit"
  此句创建一个指向edit这个action的html链接,链接显示字符为“编辑”
  link_to除了action,还可以定义controller,以及action的参数
  link_to "About", :controller=>"showpage", :action=>"about", :id=>11
  此句生成的url为http://.../showpage/about/11
  如果把上一个link_to语句的id部份改写为:name=>"gichengan",则生成的url为
http://.../showpage/about?name="glchengang"和前一个url比较得知,id是默认参数,不显示在浏览器的url中


4、class User < ActiveRecord::Base
     set_table_name "table1"   指定非默认的表名
      set_primary_key  "name"   指定非默认主键  以后name字段就成id,
     如o.id="chengang"
    end

5、2.8.2更设置
Rails命名约优于配我们不得已违反Rails也提供参下即方面
1.belongs_to属性
belongs_to : student,
           :class_name => " Student ", #指父类
             :foreign_key => "student_id",#外键
             :conditions => "id is not null",#约束条件

2.has_one属性
has_one除拥有belongs_to的属性,自己还有两个属性
:dependent => true父表删除记录,子表删除相应的记录,
:order =>"id DESC"返回记录排序

3.has_many的属性
  has_many除了拥有has_one的属性,还有三个属性
:exclusively_dependent => true 说明作用和dependent一同但速度快,两属性不能同时使用,
:finder_sql => "select i.* from categories c, items i where         i.category_id = c.id "指定返回的数据集
:counter_sql => "select count(*) from items"
重写记录数

2.10
2.10  模型的验证
在类用一些validates_*属性,可以定义字段特征。不需要写代码Rails框架自动进行验证validates_presence_of :title, :desc, :image_url 必须不为空
validates_numericality_of :price必须是数字
  validates_uniqueness_of :title 唯一
validates_format_of :image_url, 文件名必须是图片扩展名
  :with => %r{^http:.+\.(gif|jpg|png)$}i, :message => "must be a URL for a GIF, JPG, or PNG image"

保存到据库之前会调validate方法例:
def validate
errors.add(:price, "should be positive")unless price.nil?||price> 0.0 end
分享到:
评论

相关推荐

    action-record:允许事件记录和回放的 JavaScript 工具

    标题中的“action-record”是一个专门用于事件记录和回放的 JavaScript 工具,它为开发者提供了一种方便的方式来捕获用户在网页上的交互行为,并能够重新播放这些行为,这对于测试、调试以及创建交互式用户体验非常...

    Spring in Action 中文版 第五部分(Spring in Action CN.005)

    Spring in Action CN.001&lt;br&gt;Spring in Action CN.002&lt;br&gt;Spring in Action CN.003&lt;br&gt;Spring in Action CN.004&lt;br&gt;Spring in Action CN.005&lt;br&gt;Spring in Action CN.006&lt;br&gt;Spring in Action ... &lt;br&gt;本书信息:...

    Action——Action的配置和作用

    在讨论Struts2框架时,我们经常会遇到一个关键词——Action,它在Struts2中扮演着非常关键的角色。今天我们就来探讨Action的含义、作用以及在Struts2框架中的配置。 首先,Action在Struts2中包含三层含义。第一层,...

    Windchill9.0 action与actionModel

    **Windchill 9.0:Action与ActionModel详解** 在Windchill 9.0这一版本中,Action和ActionModel是两个核心概念,它们在系统中起着至关重要的作用,尤其是在工作流程(Workflow)和业务逻辑处理方面。这篇详细的知识...

    action的三种类型

    ### Action的三种类型详解 在自动化测试工具QTP(Quick Test Professional)中,Action是一种重要的概念,它代表了脚本中的一个独立执行单元。通过合理地组织和利用Action,可以帮助测试人员更高效、灵活地进行自动...

    jsp自动调用action

    ### jsp自动调用action详解 #### 一、概述 在Web开发中,尤其是在使用Java Server Pages (JSP)与Struts框架时,有时需要在用户访问某个初始页面(如欢迎页)时自动触发一系列后端操作(如执行某个Action)。这种...

    Android action 分类大全

    13. `ACTION_DATA_ACTIVITY_STATE_CHANGED_ACTION` 和 `ACTION_DATA_CONNECTION_STATE_CHANGED_ACTION`:这两个广播分别用于通知电话的数据活动状态和数据连接状态变化,对于网络相关功能的监控非常有用。...

    struts2笔记之动态调用Action指定方法及默认Action

    Struts2 动态调用 Action 指定方法及默认 Action 配置 Struts2 框架中,一个 Action 可以包含多个处理逻辑,而不是只有一个 execute() 方法。在实际开发中,我们经常需要在一个 Action 中实现多个处理逻辑,这样...

    struts2 action跳转action传参数

    ### Struts2中Action间的参数传递方法 在Struts2框架中,经常需要实现Action之间的跳转,并在跳转过程中传递必要的参数。这种需求在实际开发中非常常见,尤其是在需要根据用户的不同操作来调用不同的业务逻辑时。...

    Android 多个service的action 相同冲突 验证demo

    在某些情况下,我们可能需要启动多个Service来执行不同的任务,但问题在于,如果这些Service的Intent ACTION(动作)相同,可能会引发冲突。本篇文章将深入探讨这个主题,并提供一个验证示例。 当多个Service声明了...

    IronPython in Action 无水印pdf版

    IronPython in Action 无水印pdf版。 IronPython in Action 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络 IronPython Action

    多action之间跳转传参问题

    在开发Java Web应用程序时,尤其是使用Struts2或者Spring MVC等MVC框架时,我们经常需要在多个Action之间进行跳转并传递参数。这在构建动态、交互性强的Web应用中是必不可少的。本项目旨在演示如何在自定义的Action...

    structs in action中文完全版\6. 连线 ActionForward.pdf

    ### Struts中的ActionForward详解 #### 一、ActionForward的作用与功能 在Struts框架中,ActionForward扮演着至关重要的角色。它不仅负责处理请求之后的流程控制,还能够指导Struts框架下一步应该转向何处。具体而...

    Android的ACTION说明文档

    Android系统内置了许多预定义的ACTION,比如ACTION_VIEW、ACTION_CALL、ACTION_SEND等,开发者也可以自定义ACTION以满足特定需求。以下是一些常见的ACTION及其用途: 1. ACTION_MAIN:这是所有应用启动的入口点,...

    Spring in Action 中文版 第二部分(Spring in Action CN.002)

    Spring in Action CN.001&lt;br&gt;Spring in Action CN.002&lt;br&gt;Spring in Action CN.003&lt;br&gt;Spring in Action CN.004&lt;br&gt;Spring in Action CN.005&lt;br&gt;Spring in Action CN.006&lt;br&gt;Spring in Action ... &lt;br&gt;本书信息:...

    struts2一个action处理多个请求 struts2实例

    在Struts2框架中,Action类是业务逻辑处理的核心组件,它负责接收并处理来自用户的请求。本实例探讨了如何让一个Action类处理多个请求,这在开发中常见于需要集中处理相似请求的情况,可以提高代码复用性和结构的...

    jQuery in Action(3rd) mobi

    jQuery in Action(3rd) 英文mobi 第3版 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    RecordTest录音

    2. **长按事件处理**:为了实现长按启动录音,我们需要监听并处理`TouchListener`的`ACTION_DOWN`和`ACTION_UP`事件。当用户按下屏幕时开始录音,松开时停止录音。如果在录音过程中上滑,需要取消录音,这就需要结合...

Global site tag (gtag.js) - Google Analytics