`
xinlanzero
  • 浏览: 251956 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

图片上传插件Acts As Attachment

    博客分类:
  • Ruby
 
阅读更多

开始也是下载
在项目目录下面运行

Ruby代码 复制代码 收藏代码
  1. script/plugin source http://svn.techno-weenie.net/projects/plugins  


然后是安装

Ruby代码 复制代码 收藏代码
  1. script/plugin install acts_as_attachment  


创建dvd_cover模型

Ruby代码 复制代码 收藏代码
  1. script/generate attachment_model dvd_cover   
  2.   
  3.   
  4.     create_table :dvd_covers do |t|   
  5.       t.column "dvd_id":integer  
  6.       t.column "content_type":string  
  7.       t.column "filename":string        
  8.       t.column "size":integer  
  9.       t.column "parent_id",  :integer    
  10.       t.column "thumbnail":string  
  11.       t.column "width":integer     
  12.       t.column "height":integer  
  13.     end  



数据库重新rake下

Ruby代码 复制代码 收藏代码
  1. rake db:migrate  



下面在把生成的模型DvdCover中的代码替换成这个(全部替换下就好了)

Ruby代码 复制代码 收藏代码
  1. class DvdCover < ActiveRecord::Base   
  2.   belongs_to :dvd  
  3.   acts_as_attachment :storage => :file_system:max_size => 300.kilobytes, :content_type => :image  
  4.   validates_as_attachment   
  5. end  



让后下面的自己去写下吧(分开了反而看不清楚)

Ruby代码 复制代码 收藏代码
  1. ## app/controllers/dvd_covers_controller.rb   
  2. class DvdCoversController < ApplicationController   
  3.   def index   
  4.     @dvd_covers = DvdCover.find(:all)   
  5.   end  
  6.   
  7.   def new  
  8.     @dvd_cover = DvdCover.new  
  9.   end  
  10.   
  11.   def show   
  12.     @dvd_cover = DvdCover.find params[:id]   
  13.   end  
  14.   
  15.   def create   
  16.     @dvd_cover = DvdCover.create! params[:dvd_cover]   
  17.     redirect_to :action => 'show':id => @dvd_cover  
  18.   rescue ActiveRecord::RecordInvalid   
  19.     render :action => 'new'  
  20.   end  
  21. end  
  22.   
  23. ## app/views/dvd_covers/index.rhtml   
  24. <h1>DVD Covers</h1>   
  25.   
  26. <ul>   
  27. <% @dvd_covers.each do |dvd_cover| -%>   
  28.   <li><%= link_to dvd_cover.filename, :action => 'show':id => dvd_cover %></li>   
  29. <% end -%>   
  30. </ul>   
  31.   
  32. <p><%= link_to 'New':action => 'new' %></p>   
  33.   
  34. ## app/views/dvd_covers/new.rhtml   
  35. <h1>New DVD Cover</h1>   
  36.   
  37. <% form_for :dvd_cover:url => { :action => 'create' }, :html => { :multipart => true } do |f| -%>   
  38.   <p><%= f.file_field :uploaded_data %></p>   
  39.   <p><%= submit_tag :Create %></p>   
  40. <% end -%>   
  41.   
  42. ## app/views/dvd_covers/show.rhtml   
  43. <p><%= @dvd_cover.filename %></p>   
  44. <%= image_tag @dvd_cover.public_filename, :size => @dvd_cover.image_size %>  
分享到:
评论

相关推荐

    acts_as_authenticated

    "acts_as_authenticated" 是一个经典的Ruby on Rails插件,它为Rails应用提供了用户认证功能。在Rails框架中,用户认证通常涉及验证用户身份、管理会话以及处理登录和登出等操作。acts_as_authenticated插件简化了这...

    acts_as_list.rar

    acts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_list.raracts_as_...

    acts_as_list, 用于管理列表的ActiveRecord插件.zip

    acts_as_list, 用于管理列表的ActiveRecord插件 ActsAsList描述这个 acts_as 扩展提供了对列表中的多个对象进行排序和重新排序的功能。 具有指定的类的类需要在映射的数据库表上定义为整数的position 列。 0.8.0升级...

    acts_as_paranoid

    "acts_as_paranoid" 是一个在Ruby on Rails框架中常用的gem,用于处理数据库记录的软删除(soft delete)。在数据库操作中,通常我们会遇到删除数据的需求,但直接删除可能会导致数据丢失,尤其是在生产环境中。...

    acts_as_category:想想acts_as_tree +权限

    #ActsAsCategory acts_as_category (Version 2.0 beta)acts_as_category,是acts_as插件在acts_as_tree风格的Ruby on Rails的ActiveRecord的模式,但有一些额外的功能,以及多种便捷视图助手。例子(有关实例方法和...

    用acts_as_rateable实现简单的打分功能

    在Ruby on Rails框架中,`acts_as_rateable`是一个非常实用的插件,它允许用户对模型进行评分,从而实现简单的打分功能。这个插件是Rails社区中的一个开源项目,旨在简化应用中的评分系统集成。在本篇讨论中,我们将...

    acts_as_paranoid:ActiveRecord插件可让您隐藏和还原记录,而无需实际删除它们

    使徒行传 一个Rails插件来添加软删除。...用法安装gem: gem 'acts_as_paranoid' , '~&gt; 0.7.0' bundle install创建迁移bin/rails generate migration AddDeletedAtToParanoiac deleted_at:datetime:index启用ActsAs

    Api-acts_as_api.zip

    Api-acts_as_api.zip,使在rails中创建api响应变得简单和有趣,一个api可以被认为是多个软件设备之间通信的指导手册。例如,api可用于web应用程序之间的数据库通信。通过提取实现并将数据放弃到对象中,api简化了编程...

    rails_admin_acts_as_list:rails_admin插件以对记录进行排序

    介绍插件,用于对记录进行排序(使用 gem)安装要启用rails_admin_acts_as_list,请将以下内容添加到您的Gemfile : gem 'rails_admin_acts_as_list'gem 'rails_admin' 重要提示: rails_admin_acts_as_list之前必须...

    acts_as_nested_set的增强版BetterNestedSet

    《深入理解BetterNestedSet:acts_as_nested_set的增强版》 在Ruby on Rails开发中,数据结构的选择对于数据库操作的效率至关重要。其中,Nested Set模型是一种常用的数据组织方式,尤其适用于管理具有层级关系的...

    active_record-acts_as, 模拟activerecord模型的多表继承.zip

    active_record-acts_as, 模拟activerecord模型的多表继承 插件开发已经移动这个项目的积极发展已经转移到了的krautcomputing fork 。... ActiveRecord::ActsAs这是对 acts_as_relation的重构。模拟用于Acti

    acts_as_xapian:Xapian全文搜索插件,适用于Ruby on Rails

    《acts_as_xapian:为Ruby on Rails打造的Xapian全文搜索引擎插件》 在Web开发领域,全文搜索引擎能够极大地提升用户对信息的检索效率,对于内容丰富的应用尤其重要。Ruby on Rails作为流行的Web框架,有着众多的...

    actions_as_commentable:ActiveRecord acts_as_commentable插件

    gem 'acts_as_commentable' Rails gem 'acts_as_commentable' , '3.0.1' Rails gem 'acts_as_commentable' , git: 'git@github.com:jackdempsey/acts_as_commentable.git' , branch: '2.x' 生成器 Rails 3+ ...

    spring-acts

    spring-acts

    acts_as_restful_list:就像acts_as_list一样,但很安静

    acts_as_restful_list 就像acts_as_list 一样,但不必使用非标准方法调用(如insert_at)来弄乱您的代码,acts_as_restful_list 使管理列表变得简单。 您可以像更新其他任何内容一样更新 position 属性,其余的都...

    acts_as_favoritable:该插件提供了一种跟踪用户收藏夹的简单方法

    gem 'acts_as_favoritable' 然后执行: $ bundle 或将其自己安装为: $ gem install acts_as_favoritable 数据库迁移 $ rails generate acts_as_favoritable:migration $ rake db:migrate 用法 有利模式 贡献 ...

    acts_as_aliased:扩展 ActiveRecord

    gem 'acts_as_aliased' 更新包后,运行 rails generate acts_as_aliased:install rake db:migrate 这将创建一个新表aliases 。 用法 假设您有一个需要别名的模型Company ,因为公司名称有不同的版本。 使用acts_as...

    acts_as_owner.rb:Rails 的简单所有权解决方案

    Acts as owner 是 Ruby on Rails 的一个插件,它为所有者对象提供了自我查询可拥有对象的所有权的能力。 可拥有对象可以是属于所有者对象的任何对象和属于可拥有对象的任何对象。 属于拥有的可拥有的父代的任何可...

    acts_as_liked:向任何 Active Record 模型添加类似功能

    gem 'acts_as_liked' 然后执行: $ bundle 运行生成器: $ rails generate acts_as_liked 并且不要忘记迁移您的数据库 $ rake db:migrate 用法 可爱的模特 将acts_as_likeable添加到任何模型,它的实例可以被...

    acts_as_privilege.rb:Rails 的简单权限解决方案

    Acts as privilege 是 Ruby on Rails 的一个插件,它提供了将控制器操作限制为特权资源的功能。 这种基于 ACL 的安全模型被设计为基于角色的访问控制,其中每个角色可以是一组用户。 地位 哲学 只做一件事的通用库...

Global site tag (gtag.js) - Google Analytics