Themeforest 到 Rails 应用程序

2024-03-05

这是我第一次在 Rails 应用程序中使用外部 HTML 主题。我从 Themeforest 下载了一个主题。当然,它带有大量的 JS、CSS 和图像。我想知道你们大多数人在将主题集成到 Rails 应用程序时使用什么工作流程。

  • 您是否将所有下载的资源放在公共文件夹中?或者您是否将它们放在应用程序/资产中的适当文件夹中,然后修复图像网址等?

我认为这个问题会根据意见得到答案,但你可以尝试这个 gem 为你的应用程序安装静态 html (未测试)。安装主题宝石 https://github.com/drnic/install_theme。有关使用此 gem 的参考,请阅读此博客http://drnicwilliams.com/category/ruby/ruby-on-rails/page/2/(如果我把啧啧声放在这里,我的答案将完整发布)

对于你的问题:

您是否将所有下载的资源放在公共文件夹中?或者您是否将它们放在应用程序/资产中的适当文件夹中,然后修复图像网址等?

我的工作流程如下所示:

  1. 将css、js、图片、字体文件放到assets目录下

    -assets
       - fonts
       - images
       - javascripts
       - stylesheets
    
  2. 编辑 css 文件和 js 文件中的 url 图像、url 字体。

    如果我使用扩展css.erb对于 css 文件、url 图像、url 字体应编辑如下:

    image :

    background-image:url(<%= asset_path 'bg.png' %>);  
    

    font :

    @font-face {
        font-family: namefonts;
        src: url('<%= asset_path('namefonts.eot') %>');
        src: url('<%= asset_path('namefontsd41d.eot') %>?#iefix') format('embedded-opentype'), 
           url('<%= asset_path('namefonts.woff') %>') format('woff'), 
           url('<%= asset_path('namefonts.ttf') %>') format('truetype'), 
           url('<%= asset_path('namefonts.svg') %>#icons') format('svg');
        font-weight: 400;
        font-style: normal;
    }
    

    如果我使用扩展css.scss

    image :

    background : image-url("bg.png")
    

    font :

    @font-face {
    font-family:'namefonts';
    src:font-url('namefonts.eot');
    src:font-url('namefonts.eot?#iefix') format('embedded-opentype'),
    
     ...
    } 
    
  3. 选择 html 结构来布局模板(头标签、页眉、导航栏、侧边栏页脚)、部分模板(内容、表单等)-如果我使用html.erb

    -views
       - layouts
       - partials
         - form
         - index
    

    编码资产链接

    <%= stylesheet_link_tag "application", media: "all" %>
    <%= javascript_include_tag "application" %>
    
  4. 编辑图像标签、url标签、表单标签等以符合rails模板(erb文件)

    图像标签

    html 中的示例

    <img src="images/rails.png" class="theclass"/>   
    

    改成

    <%= image_tag "rails.png", :class => 'theclass' %>
    

    link tag

    html 中的示例

    <a href="index.html">Home</a>
    

    改成

    <%= link_to "Home", root_path %>
    

    form tag你可以阅读this http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html

    <%= form_tag("action", method: "post") do %>
     <%= label_tag(:q, "Label for:") %>
     <%= text_field_tag(:q) %>
     <%= submit_tag("Save") %>
    <% end %>
    
  5. 编辑任何文件以符合 Rails

    你可以阅读这个

    • 资产管道 http://guides.rubyonrails.org/asset_pipeline.html
    • Rails 中的布局和渲染 http://guides.rubyonrails.org/layouts_and_rendering.html
    • 表单助手 http://guides.rubyonrails.org/form_helpers.html
  6. 更新资产管道

    修复方法非常简单。打开项目的配置文件,位于config/application.rb并在您的 Application 类中添加以下行:

    config.assets.paths << Rails.root.join("app", "assets", "fonts")
    config.assets.precompile += %w( .svg .eot .woff .ttf )
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Themeforest 到 Rails 应用程序 的相关文章

  • 获取嵌套参数

    我有一个带有嵌套参数的表单 在下面的示例中 如何获取控制器中的 amount whole 值 Parameters utf8 gt authenticity token gt KCmBI6RLh0LdUsM2r5H1vhNykS1IXecF
  • Rails 4 应用程序...在开发环境中,除非刷新页面,否则 javascript 不会触发

    所以我的第一个rails4应用程序遇到了一个奇怪的问题 除非我重新加载页面 否则我的页面javascript不会触发 对于我的 asset pipeline JS 和 content for JS 来说都是如此 在我的 assets jav
  • Rails 4 使用 ajax、jquery、:remote => true 和 respond_to 渲染部分

    使用 AJAX 动态渲染页面以响应提交的表单似乎很常见 其他类似的问题都没有集中于如何以一般方式做到这一点 我能找到的关于这个主题的最好的博客文章在这里 http www gotealeaf com blog the detailed gu
  • 如何向 Rails 应用程序添加自定义字体?

    我想在 RoR 应用程序中使用几种字体 但它们的格式主要是 ttf 和 otf 等 我该如何将这些文件嵌入到我的 Rails 应用程序中 也就是说 一旦我将它们放入我的资产文件夹中 将它们嵌入我的 CSS 和 或 LESS 文件中的语法到底
  • Ruby/Rails 集合到集合

    我有两个表与一个连接表连接 这只是伪代码 Library Book LibraryBooks 我需要做的是 如果我有一个图书馆的 id 我想获取该图书馆拥有的所有书籍所在的所有图书馆 因此 如果我有图书馆 1 图书馆 1 中有书籍 A 和
  • 资产管道:仅对一个控制器使用 javascript 文件

    在 Ruby on Rails v4 中 我希望仅为特定控制器加载一个 js 文件 或一组 js 文件 执行此操作的标准方法是什么 在 application js 中有 require tree 线 我假设这需要删除 所以我并不总是加载每
  • RoR - Rails 中的大文件上传

    我有一个 Rails Web 应用程序 允许用户上传视频 视频存储在 NFS 安装的目录中 当前的设置适用于较小的文件 但我也需要支持大文件上传 最多 4GB 当我尝试上传 4GB 文件时 它最终会发生 但从用户体验的角度来看很糟糕 上传开
  • 服务器上的 Rails 会话

    我想让一些 Rails 应用程序在不同的服务器上共享同一个会话 我可以在同一服务器内完成此操作 但不知道是否可以在不同服务器上共享 有人已经做过或者知道怎么做吗 Thanks Use the 数据库会话存储 https github com
  • 如何在 Ruby 2.2 上删除不安全密码来强化 Rails+webrick+https

    更新 首先 我的测试代码没有充分显示 ruby 2 4 看到 SSLCiphers 选项 而 ruby 2 2 没有 我编辑了下面的示例代码以清楚地表明这一点 更新 由于我的问题未能得到社区的任何帮助 我继续前进 两天后找到了解决方案 我将
  • 在哪里可以找到 WPF 应用程序中 UI 的一些主题/演示?

    我想使用 xaml 中的 Visual Studio Designer 设计一个现代外观的 UI 它为我提供了一个很好的工具箱 我可以使用它通过拖放来直观地创建 UI 由于它几乎表现得像 HTML 我想知道它是否也有丰富的主题库 我找到了一
  • Rails 资源单数还是复数?

    我有一条搜索路线 我想将其设为单数 但是当我指定单数路线时 它仍然会生成复数控制器路线 这是应该的样子吗 resource search Gives me search POST search format action gt create
  • Rails 安全:完全避免大规模分配

    我倾向于不需要批量分配 http guides rubyonrails org security html mass assignment我的生产代码中的功能 在我的测试代码中 我经常使用它 但在这些情况下我do想要设置任意列 因此 如果在
  • 在 Sinatra 中运行后台进程

    我有 Sinatra Rails 应用程序和一个启动一些漫长过程的操作 通常我会为后台作业排队 但这种情况太简单了 后台进程很少启动 所以队列是一个开销 那么如何在没有队列的情况下运行后台进程呢 get build logs project
  • ruby on Rails:音频/mp3 内容标题下载

    如何在 ruby rails 中设置下载标题 在 php 中 我为 mp3 下载设置标头 如下所示 header Content Transfer Encoding binary header Content type audio mp3
  • 高效地重新安排 ActiveJob (resque/sidekiq)

    我正在玩Rails 4 2应用程序使用ActiveJob受支持resque sidekiq用于电子邮件安排 当用户创建时事通讯活动时 会创建一个新作业并安排在特定日期 这一切都很好 但是当用户更改交货日期时会发生什么 在这种情况下 每个作业
  • Rails 3.2:用 json 序列化中的空字符串替换 null 值

    我正在使用 Rails 3 2序列化 http www simonecarletti com blog 2010 04 inside ruby on rails serializing ruby objects with json 将 ru
  • jqgrid。改变主题

    如何在不更改样式表的情况下更改 jqgrid 的外观 基本上我使用 jqueryui 来设计我的网站 但我想为网格使用不同的背景图像 这可能吗 您是否想要将多个 jQueryUI 主题应用到同一页面 并让 jqgrid 使用其中一个主题 同
  • 使用 AJAX 和 JQuery 按设定的时间间隔刷新 Rails 部分

    I have a page in my rails application that looks like 现在 我有另一个用 python 编码的人工智能应用程序 它处理视频 显示在 Rails 应用程序页面的左侧 并使用捕获的车辆及其相
  • 如何在 mongoid 中使用 or 条件进行查询

    如何在 Mongoid 中使用 or 条件进行查询 这是 OR 在 mongoid 中查询 如果你想要像下面这样的查询 select from user where id 10 or name hitesh 在带有 mongoid 的 Ra
  • 更改 en.yml 文件中的属性名称不起作用

    我更改了 ruby on Rails 项目中 en yml 文件中的属性名称 按钮工作正常 但字段属性并没有改变 这是我的模型 class Enr AffordableWarmth lt ActiveRecord Base self tab

随机推荐

  • 监听 JBoss AS 6 中的登录事件

    我有一个在 JBoss AS6 中运行的应用程序 身份验证正在使用 FORM 身份验证方法进行 并且用户正在正确登录 我希望能够在用户成功登录时调用一段自定义的静态代码 不幸的是 我找不到任何侦听器 挂钩或回调 它们将在成功登录时执行代码
  • np.argsort 排除零值

    我有一个数组 0 2 0 0 0 0 3 0 0 0 0 4 我在用着np argsort对值进行排序并获取索引 所以 对于我的例子来说 它会是这样的 1 5 9 2 3 4 6 但是 我只想获取索引数组非零值 仅在我的示例中 1 5 9
  • SailsJS - 将 sails.io.js 与 JWT 结合使用

    我已经实现了一个 AngularJS 应用程序 使用 sails io js 通过 websockets 与 Sails 后端进行通信 由于后端基本上是一个纯 API 并且也会从其他应用程序连接 因此我尝试完全禁用会话并使用 JWT 我已经
  • 在独立运行的 Powershell 脚本之间传递信息

    抱歉之前是工资 我会再尝试 情况很复杂 无法解释 但基本上问题是 如何将字符串 最多 20 个字符 从一个脚本传递到另一个脚本在同一台机器上运行 这两个脚本在后台连续运行同一台机器 在下面相同的用户上下文 but 不能合并 I 不能点源一个
  • 我想在 Excel 中从数千个项目的列表中查找特定项目的最新日期

    因此 在上面第一个项目的示例中 我希望最晚日期为 2018 年 7 月 17 日 对于 Office 365 使用 MAXIFS MAXIFS B B A A A2 对于较旧的 USE AGGREGATE AGGREGATE 14 6 B
  • SolidJS:打字稿错误表示值的类型为“未定义”,尽管检查它不是

    我有一些 SolidJS 代码 例如 value undefined img src srcs value where value是一个信号 我在下面收到 TypeScript 错误value saying Type undefined c
  • 如何在Firemonkey中绘制虚线?

    我想在 Firemonkey 项目中的 TPaintbox 画布上绘制点状网格 结果应该如下所示 首先 我想我会绘制垂直虚线 然后绘制水平虚线 因此考虑到这一点 我尝试先绘制一条线 以使外观恰到好处 这就是我尝试过的 Canvas Stro
  • newBufferWithBytes() 有大小限制吗?

    我一直在使用 Metal 渲染多面体 当我尝试使用 newBufferWithBytes 渲染一个二十面体实体时 该问题发生了 该实体的顶点仅包含 1680 字节的数据 然后整个应用程序停止 CPU 和 GPU 帧都降至零 一切都恢复正常
  • Spring Security 具有数据库和多个角色?

    我正在尝试使用 spring 3 0 制作一个应用程序 现在我决定尝试一下 spring security 和 hibernate 我已经看到可以用数据库支持它 并且我已经看到了定义您自己的查询的参考 现在我遇到的问题是我找到的教程不太清楚
  • 如何高效存储100万个单词并通过starts_with、contains或ends_with进行查询?

    网站如何喜欢this https www morewords com contains c存储数万个 包含 c 的单词 或者类似this https word tips words with d and c 带有 d 和 c 的单词 或者更
  • 如何判断两个日期是否在同一天或同一小时? [复制]

    这个问题在这里已经有答案了 JavaScript Date 对象将日期与时间进行比较 因此 如果比较 time1 getTime time2 getTime 他们将是 false 如果至少有一毫秒不同 我们需要的是有一个很好的方法来按小时
  • 在 Google 脚本中尝试/捕获 HTTP 响应的最佳方法

    我对 JavaScript 和 Google apps 脚本还很陌生 这是我第一次尝试使用 Try Catch 语句 我正在运行连接到页面的脚本 它在大多数情况下都可以毫无问题地连接 但有时它不会响应并抛出 http 错误 或者 响应将为空
  • HtmlUnitDriver 无法正确获取页面

    我是这方面的新手 基本上我正在尝试使用 HtmlUnitDriver 这是我的代码 WebDriver driver new HtmlUnitDriver driver get http www google com System out
  • 如何通过单击按钮打开新窗口

    作为我的程序的一部分 我需要一个按钮 当用户单击它时 它会打开一个新窗口 好吧 我想我应该有一个类来制作框架并通过按钮调用它 但我没有任何开始的想法 我刚刚在程序中找到了按钮 但它不起作用 那么有人可以告诉我该怎么做吗 或编码 这是您想要执
  • 更改 Azure Devops 中的组织 URL 时对管道代理的影响

    我想在 Azure Devops 中重命名我的组织 URL 这 articles https support microsoft com en gb help 2793597 things to do before and after yo
  • 使用 Office 2010 COM 的 asp.net Web 服务

    我正在编写一个 Web 服务 并希望将 docx 或 doc 更改为 xps 我正在使用 Office com 来帮助我另存为 xps 格式 如下所示 WebMethod public string GetDocPreviewUrl str
  • Java编译器/解释器

    为什么我们说Java是一种编译型和解释型语言 这样做的好处是什么 被编译和解释 Java 在编译时被编译为中间 字节代码 这与 C 等语言在编译时编译为机器语言形成对比 Java 字节代码不能像编译的 C 代码那样直接在硬件上执行 相反 字
  • 在 eclipse 中调试 Android 返回堆栈

    有没有办法在 Eclipse ADT IDE 中可视化 Android 中的后台堆栈以及活动和片段 您的意思是只是为了调试目的看看它是什么样子吗 在这种情况下 定义 public static void displayBackStack F
  • 如何使用自定义 JTable 单元格编辑器和单元格渲染器

    我创建了一个带有自定义表格渲染和自定义单元格编辑器的 JTable 它给出了图像中的结果 我使用扩展 JPanel 的单独类创建了第一个表格单元格中显示的面板 并将表值添加为 tbl setCellEditor new customCell
  • Themeforest 到 Rails 应用程序

    这是我第一次在 Rails 应用程序中使用外部 HTML 主题 我从 Themeforest 下载了一个主题 当然 它带有大量的 JS CSS 和图像 我想知道你们大多数人在将主题集成到 Rails 应用程序时使用什么工作流程 您是否将所有