对了,突然想起一个来,你安装了 vs 开发工具。 然后在项目上点击右键,选择【添加 webservice】,尝试把网站的地址输入弹出的对话框,然后让他自己找一找,这也是一个办法。
文档 源码 问开发者 都没有的话,那就无从判断,总不能乱尝试吧,这个没有办法尝试的,鬼才知道他怎么定义自己的网站的。
Student.includes(:results).where('results.exam_id =?',Exam.find_by_name('ruby').id).order('results.score DESC')
class Customer < ActiveRecord::Base has_many :recent_orders, :class_name => "Order", :order => "order_date DESC", :limit => 100 end
这句是检查 person 是否 valid,如果 valid==true,就不用显示错误信息了,如果是就显示错误信息,并且阻止后面的代码继续执行。
是这样的
为 IE6 忙活,死的肯定比较惨兮兮!!哈哈!!
写 A.transaction 也可以,只是开启一个事务,并不针对具体的 model,下面的操作才是具体的 model。
http://api.rubyonrails.org/classes/ActiveRecord/Transactions/ClassMethods.html
ActiveRecord::Base.transaction do david.withdrawal(100) mary.deposit(100) end
http://api.rubyonrails.org/classes/ActiveRecord/Transactions.html transaction 是一个 module
还没有接触过 monitor
既然是事务,肯定要遵守事务的特性,ACID。 这段代码和 A 没有关系,你的 destroy 只是 BCD。原子性!要么都删除,要么都回滚!!
你是说自定义属性吗,就像 id 属性一样,自己定义一个 iddd 之类的属性,是这个意思吗?
下载这块自己写,不让用户使用 http 自带的下载,你就可以控制流量了,监测流量。具体我没有写过,只是我的一个思路。
社交社区适合用 nosql
#6 楼 @yedingding 这是最直接的原因
你需要两个功能。 一个是输入错误次数的统计,正确之后清零。 一个是一段时间不让登陆。
最直接的,先写个 if。。。eslif。。。end,然后想办法把这个 if 独立出来,按照你的业务逻辑写就可以了,没有必要 gem,浪费了。
写 post 的时候,单独写一个 summary,显示 summary 就可以了。 summary 如果没有写,在截取字符串。 直接截取有可能出现半截标签,要截取 p 标签,完整的一个 p 标签,不要用字数来截取,应该可以较好的解决。
和几个 model 没有关系的
Item.transaction do i = Item.lock.first i.name = 'Jones' i.save end
先写出 sql,然后再翻译成 rails 的 query interface。 强烈建议学习 sql 先,稍微复杂点的数据库应用都会用到的,这个也是基本功之一,必须比较扎实才行。
先说 sql 怎么写。 你这个最直观的是需要连接两张表,users 和 topics,inner join。 users inner join topics on users.id=topics.user_id 这样保证只查询发表过 topic 的 user。 然后根据 topic 的 user_id 分组,配需,然后查询 user 的信息。
或者是
select u from users u where exists( select 1 from topics t where t.user_id=u.id) .groupby .order
#7 楼 @zhangyuan ?避免,不要拼接字符串
你的意思是查询发表了 topic 的 user 列表,你想要的 user 列表,但是里面的 user 需要有 topic,然后根据 topic 的 count 倒序排列,是这样的吗?
不太明白,user_id 是唯一的,根据这个唯一的只能找到一个 user,不太可能找到一个集合吧
find 方法没有这种参数,你要找一个接受这种参数的方法。
上面就是对 name 的验证结果。 ·person.errors[:name]· 如果你还有一个字段 email,那么就是 ·person.errors[:email]·
class Person < ActiveRecord::Base
validates :name, :presence => true, :length => { :minimum => 3 }
end
person = Person.new
person.valid? # => false
person.errors
# => {:name => ["can't be blank", "is too short (minimum is 3 characters)"]}
match 'filters/category' => 'filters/category'
Topic.group('user_id').select('user_id').order('count(user_id) desc')