`
fantaxy025025
  • 浏览: 1327977 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Rails的image_tag和image_path的使用

 
阅读更多

Rails的image_tag和image_path的使用

Rails 的 pipline,思想很好,不少细节考虑细致入微,但结构设计的跟屎一样,稍微脱离“小而简”的项目就没法好好工作了,没法说了。

 

#md5的fingerprint

http://guides.rubyonrails.org/asset_pipeline.html

具有pipline的好处。但是,发现有些图片没有生成指纹,为啥? 因为路径。

In regular views you can access images in the assets/images directory like this:

<%= image_tag "rails.png" %>

Provided that the pipeline is enabled within your application (and not disabled in the current environment context), this file is served by Sprockets. If a file exists at public/assets/rails.pngit is served by the web server.

Alternatively, a request for a file with an MD5 hash such as public/assets/rails-af27b6a414e6da00003503148be9b409.png is treated the same way. How these hashes are generated is covered in the In Production section later on in this guide.

 

 

#绝对路径和相对路径的区别

1.9.3-p194 :032 > helper.image_tag("/aaa/bbb.jpg")

 => "<img alt=\"Bbb\" src=\"/aaa/bbb.jpg\" />"

 

1.9.3-p194 :031 > helper.image_tag("aaa/bbb.jpg")

Sprockets::Helpers::RailsHelper::AssetPaths::AssetNotPrecompiledError: aaa/bbb.jpg isn't precompiled

只有相对路径的图片和静态资源,才会走指纹。

而且,如果关闭了生产环境的临时编译,一旦没有编译成功的静态资源,就报错了。 

具体的源码,有时间再贴上来。 

 

#实际的开发中,使用iamge_path较多

实际项目和环境,总是比闷头设计和想像要现实很多。

开发中, 我们不可能都把html改为rails的xxx_tag,所以直接想得到image_tag的图片路径,而不是生成的一堆字符串。找人问无果,就看源码,image_path正是。

 

*

*

*

-

*

*

*

 

分享到:
评论

相关推荐

    rails_js_helper:可以在 Javascript 上使用 image_path、asset_path 和命名路由助手(有限)

    上的编译时间上嵌入了image_path 、 asset_path和路由表rails_helper.js.coffee.erb. RailsHelper有一些功能。 局限性 这个 gem 只能使用没有命名路由的段。 前任。 # config/routes.rb Rails . application . ...

    rails_admin_image_manager:RailsAdmin和CKEditor的图像管理器

    gem 'rails_admin_image_manager' 跑步 $ bundle install 安装RailsAdmin_ImageManager $ rails generate rails_admin_image_manager:install 将上传文件路径添加到您的.gitignore文件中 /public/rails_admin_...

    Rails101_by_rails4.0

    《Rails101_by_rails4.0》是一本专注于Rails 4.0.0版本和Ruby 2.0.0版本的自学教程书籍,它定位于中文读者,旨在成为学习Rails框架的参考教材。Rails(Ruby on Rails)是一个采用Ruby语言编写的开源Web应用框架,它...

    image_optim_rails:使用image_optim优化Rails资产

    image_optim_rails 使用image_optim gem优化rails图像资产。 在文件中可以找到获取二进制文件的选项和说明。安装添加到您的Gemfile : gem 'image_optim_rails' 使用 : gem 'image_optim_rails'gem 'image_optim_...

    blurred_image_tag

    blurd_image_tag 将图像放置在固定的宽度/高度框中,而不用在Rails应用程序中拉伸,...用法帮手您可以像在Rails中使用image_tag帮助器一样使用帮助器blurred_image_tag : blurred_image_tag source , options = { }

    rails_apps_composer, 一个 gem,为 Rails 启动应用程序创建 Rails 应用程序模板.zip

    rails_apps_composer, 一个 gem,为 Rails 启动应用程序创建 Rails 应用程序模板 Rails 应用编辑器 Rails 应用程序编辑器 gem 安装一个 命令行 工具来从"食谱"的..."你可以使用 rails_apps_composer gem 执行以下操作:

    inspinia admin - v2.5 Rails_Full_Version

    当你解压"Rails_Full_Version"并开始开发时,可以参考这些知识点逐步构建和定制你的后台管理系统。务必保持代码整洁,遵循DRY(Don't Repeat Yourself)原则,以实现高效且可扩展的代码。同时,不断学习和研究新的...

    rails_semantic_logger, Rails 语义记录器用语义记录器替换 Rails 缺省记录器.zip

    rails_semantic_logger, Rails 语义记录器用语义记录器替换 Rails 缺省记录器 Rails 语义记录器 语义记录器用语义记录器替代 Rails 缺省记录器。http://github.com/rocketjob/rails_semantic_logger文档有关完整文档...

    Complex Rails system_Rails_优化_

    Rails,作为一个强大的Web开发框架,虽然提供了丰富的功能和便利性,但如果不进行适当的优化,可能会导致应用程序响应时间变慢,资源消耗过大,甚至影响用户体验。本篇文章将深入探讨如何针对Rails系统的复杂架构...

    InspiniaAdmin 2.6.1 Rails_Full_Version

    在Rails_Full_Version压缩包中,包含了完整的源代码和必要的资源文件,开发者可以通过解压并导入到Rails项目中,按照官方文档进行配置和定制。同时,这个版本可能还包含了升级记录、更改日志和可能的bug修复,以保证...

    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之前必须...

    agile_web_development_with_rails_3rd_edition.9994652073.pdf

    《敏捷Web开发与Rails》第三版是一本全面且深入的Ruby on Rails教程,适合那些希望利用敏捷开发原则和Rails框架构建高质量Web应用的开发者阅读。通过学习本书,读者不仅可以掌握Rails的基本操作,还能学会如何运用...

    gravatar_image_tag:一个可配置且已记录的Rails视图助手,用于将gravatars添加到Rails应用程序中

    `gravatar_image_tag`是一个方便的视图助手,它使得在Rails应用中添加Gravatar图像变得简单易行,同时具有可配置性和文档支持。 首先,让我们详细了解一下`gravatar_image_tag`。这个助手函数主要负责生成一个...

    weixin_rails_middleware, 微信集成 ruby weixin_rails_middleware for integration weixin..zip

    使用 `weixin_rails_middleware` 时,开发者应遵循最佳实践,如保持请求和响应的异步处理、合理设计消息模板、确保数据安全性等,以提升用户体验和应用性能。 综上所述,`weixin_rails_middleware` 是一款强大且...

    Ruby on Rails Guides_ A Guide to Testing Rails Applications.pdf

    Rake是Ruby社区广泛使用的任务自动化工具,该指南详细解释了如何使用Rake任务来运行测试,这在持续集成和日常开发中极为重要。 七、关于Test::Unit的简短说明 尽管Rails提供了丰富的测试支持,但了解其基础——...

    rails_best_practices:Rails项目的代码度量工具

    rails_best_practices ...默认情况下,rails_best_practices将解析vendor , spec , test和features目录中的代码。 排除目录 要排除目录,只需使用-e或--exclude调用: rails_best_practices -e "db/migrate

    Api-rails5_api_tutorial.zip

    Api-rails5_api_tutorial.zip,了解如何在michael hartl的rails 5教程上构建一个现代api立即在rails应用程序中构建一个api!(Rails 5版本),一个api可以被认为是多个软件设备之间通信的指导手册。例如,api可用于web...

    Ruby on Rails Guides_ A Guide to Active Record Associations.pdf

    Ruby on Rails Guides_ A Guide to Active Record Associations.pdf

    rails open_flash_chart

    "Rails Open Flash Chart" 是一个基于Ruby on Rails框架的库,用于在Web应用程序中生成交互式的Flash图表。这个库允许开发者轻松地创建各种统计图表,如折线图、柱状图、饼图等,以便更好地可视化数据。由于Flash在...

    RestFul_Rails_Dev_pdf_v_0.1.zip

    本资料“RestFul_Rails_Dev_pdf_v_0.1.zip”包含了《RESTful Rails Development》的翻译版,将深入探讨如何在Rails中实现RESTful的设计模式。 首先,RESTful设计的核心概念是资源(Resources)。在Rails中,资源...

Global site tag (gtag.js) - Google Analytics