我正在使用Rails 3.1,在资产下我有这样的文件:
assets
javascripts
admin
admin.js
a1.js
client
client.js
c1.js
Run Code Online (Sandbox Code Playgroud)
admin.js看起来像这样
//
//= require jquery
//= require jquery_ujs
//= require a1
Run Code Online (Sandbox Code Playgroud)
client.js看起来像这样
//
//= require jquery
//= require c1
Run Code Online (Sandbox Code Playgroud)
在开发模式下一切正常.当我做rake资产:预编译然后我没有在公共/资产中看到任何javascript文件.我确实看到了公共/资产中的所有样式表.
我认为这与在这种情况下清单文件(admin.js和client.js)在子目录中的事实有关.
那么rake资产是这样的:预编译不会查看子目录吗?
对于如何解决这个问题,有任何的建议吗.我更喜欢按照我的方式设置文件,因为我有一堆javascript文件.
我正在使用带有rails 3.1的PDFkit.在过去,我能够使用render_to_string函数并从该字符串创建pdf.然后我按如下方式添加样式表.我的问题是我不知道如何从资产管道中访问它们.(这就是我在rails 3.0中的表现)
html_string = render_to_string(:template => "/faxes/show.html.erb", :layout => 'trade_request')
kit = PDFKit.new(html_string, :page_size => 'Letter')
kit.stylesheets << "#{Rails.root.to_s}/public/stylesheets/trade_request.css"
Run Code Online (Sandbox Code Playgroud)
所以我的问题是如何通过资产管道直接从我的控制器访问我的css文件?
我知道我可以使用带有PDFkit的Rack Middleware将pdf呈现给浏览器,但在这种情况下,我需要将pdf发送到第三方传真服务.
谢谢你的帮助.
瑞安
我正在使用acts_as_solr将Rails应用程序转换为太阳黑子.
该应用程序使用在acts_as_solr中公开的solr中的字段搜索功能.你可以给它一个像这样的查询字符串:
title:"The thing to search"
Run Code Online (Sandbox Code Playgroud)
它会在标题字段中搜索该字符串.
在转换为太阳黑子时,我正在解析查询字符串的字段特定部分,我需要动态生成搜索块.像这样的东西:
Sunspot.search(table_clazz) do keywords(first_string, :fields => :title) keywords(second_string, :fields => :description) ... paginate(:page => page, :per_page => per_page) end
如果查询需要,还需要执行持续时间(秒,整数)范围和否定,这很复杂.
在当前系统上,用户可以在标题中搜索某些内容,不包括在其他字段中包含其他内容的记录,并按持续时间确定范围.
简而言之,如何动态生成这些块?
我维护一个开源的Delphi库.我想为所有Delphi XE系列编译器提供一个最小的项目文件.理想情况下,有这样一个工具,所以我只需要为XE6创建一个项目文件,它将删除所有冗余信息并自动为XE-XE5创建相应的项目文件.存档有什么聪明的方法吗?
这是我当前的项目文件,其中包含许多冗余信息.例如,它包含Android/iOS等的虚拟配置,但我的项目是传统Windows应用程序的目标.如果我手动删除这些信息,它将在项目更改时返回.我也知道,DebugInformationXE4中的值是boolean,而XE5 中是整数.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{1118D87C-9E72-4D93-9098-E70AD237493A}</ProjectGuid>
<MainSource>dutil_rtl.dpk</MainSource>
<ProjectVersion>15.1</ProjectVersion>
<FrameworkType>None</FrameworkType>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
<TargetedPlatforms>3</TargetedPlatforms>
<AppType>Package</AppType>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
<Cfg_1_Win64>true</Cfg_1_Win64>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base> …Run Code Online (Sandbox Code Playgroud)