如果我像这样在邮件中附加xls文件作为附件
attachments["1.xls"] = File.read "1.xls"
如果我尝试从收到的邮件中打开附件,Excel将无法打开,并显示文件已损坏
如果我遗漏了什么,请告诉我?
如果需要更多信息,请告诉我。在这里找到了答案
显然,在Windows上附加二进制文件的正确方法是
attachments[file_name] = File.open(file_location, 'rb'){|f| f.read}
我最近遇到了一个奇怪的问题或Rails 3,可能是自从新的rubygems 1.5更新以来。基本上,当我使用passenger 3.0.2将我的程序部署到nginx时,我立即有500个页面,在我的生产日志中有这样的问题:
ActionView::Template::Error (couldn't parse YAML at line 105 column 13):
10: </div>
11: <% end %>
12: <div clas
我正在rails上开发一个网站。我试图将我的项目移动到另一台机器上并启动rails服务器,但服务器没有启动。相反,当我在终端中输入命令rails时,它会创建各种文件。请让我知道在另一台机器上运行我的项目应该遵循的步骤。我在那里安装了rails。听起来像是另一台机器安装了rails 2(而不是3),运行rails将生成一个名为的新rails应用程序,听起来像是另一台机器安装了rails 2(而不是3),运行rails将生成一个名为的新rails应用程序,您迁移了数据库吗?两台计算机都使用相同版本的
我是RubyonRails新手。我正在努力学习它,我正在阅读RubyonRails3教程
因此,我为demo_应用程序创建了一个脚手架,并得到以下结果:
66-90-244-41:演示应用程序rodolfopenajr$rails生成脚手架用户名:string电子邮件:string
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
还有人在mongodb上使用“customink”的central_logger gem吗
我注意到我收集的文档数量并不像人们期望的那么多。例如,一个250MBs的集合只能保存255-260个文档。我已经把我自己的文档插入到同一个集合中,得到了2000多个。。。然而,每当central_logger将文档添加到集合中时,文档数量会突然减少,平均文档大小会呈指数级增长
就好像中央记录器插入了带有某种隐藏缓冲区的文档一样
有人遇到过这种情况吗?多亏了mongodb用户google group的好心人
我正在使用Rails 3,并将进行分页。我将在三层嵌套的资源中成功工作。从其他控制器链接到分页视图页1 2 3 4时遇到问题。我在一个控制器中,但分页发生在嵌套的控制器中。假设我有一个控制器部分“主题”和“回复”。在我的show“topics”控制器中,我对所有回复进行分页,因为它根据主题的路径提取回复。现在我在show section视图中尝试链接到主题的不同页面,每页大约有7个回复。由于我在节控制器中,我无法轻松地对主题的回复进行分页,因为它依赖于视图中的主题循环。此外,我不一定希望主题名称
我不想让我的rails 3应用程序保存development.log中的所有开发日志,因为这会使我的文件变大 通常,在rails应用程序中,有一个配置文件,您可以在其中设置特定于开发、生产、登台的配置数据,用于日志记录、数据库绑定、引导等,。。。
也许您可以检查这些文件,如果没有为日志记录定义属性,请检查,如果您的日志记录级别设置为适当的值
链接:
问候完全关闭它是一个非常糟糕的主意。通过指定以下日志级别,您可以使其放入更少的事务:
config.log_level = :info
在conf
给定一个初始日期和今天,在该日期之间搜索所有“名称”的查询是什么
谢谢你MongoMapper
initial_date = Time.utc(2011, 5, 1) # 2011-05-01 00:00:00 UTC
@conn = Mongo::Connection.new
@db = @conn['my_db']
@collection = @db['users']
@users = @collection.find(:created_on => {:$gte => initi
我有一个路径为(例如)/premises/92的页面,如果用户未登录,我会在该页面上显示“请[log in]或[register]以获取更多信息”,我希望Desive在用户登录后返回相同的/premises/92页面
我读过其他帖子,我想我理解Desive的存储位置是如何工作的。理论上,我可以在我的应用程序控制器中放入类似的内容:
def stored_location_for(resource)
if (r = session[:return_to])
session[:retur
在TestUnit上,您可以使用-n选项在文件中启动一个测试
比如说
require 'test_helper'
class UserTest < ActiveSupport::TestCase
test "the truth" do
assert true
end
test "the truth 2" do
assert true
end
end
输出
1 tests, 1 assertions, 0 failures, 0 errors, 0
我正在开发一款基于浏览器的游戏,我在那里有一张大地图。地图的地形是静态的。因此,我有数千块不会改变的瓷砖(无论它们代表森林、沙漠还是其他),只是上面的玩家可以改变
因此,我想把我所有的地图都存储在玩家的电脑里。我正在使用RubyonRails,这些地图信息从服务器传递到用户浏览器上运行的javascript,以便呈现漂亮的地图。但是有一个200kb.html文件,包含所有与地图相关的信息,这让我非常难过
解决这个问题最简单的方法是什么?饼干!好。我就是这么想的。一个完整的地图信息可以达到近200
我有一个polymorhpic模型,如下所示:
class Upload < ActiveRecord::Base
belongs_to :uploadable, :polymorphic => true
has_attached_file :photo
end
class Message < ActiveRecord::Base
has_one :upload, :as => :uploadable, :dependent => :destroy
我正在为一个养兔子的农民建立一个网站(让我们假装一下)。这名男子密切关注他的兔子,并希望它们都分类。所以我给他建了一个RabbitCategoriesController,并将这一行添加到我的routes.rb中
resources :rabbit_categories
URL显示为rabbit\u categories,rabbit\u categories新的,等等
如果我希望URL看起来像rabits/categoriesrabits/categories/new,该怎么办?这不是嵌套资
比如说,现在我压缩/压缩了我当前Rails应用程序目录的一个副本,将其放入flashdrive并存储10年
当我在10年后尝试运行此应用程序时,如何确保rubygems.org会存在
出于这个原因,我想知道是否有一种方法可以存储一个完整的rails应用程序,包括Gemfile中定义的所有gem、数据库和备份中的所有文件,因此我确信我将来能够执行它。使用bundle package命令将所有gem打包到供应商/缓存中
更多信息:
至于你的数据库,我只是将数据转储到一个文件中(例如SQL转储)。您的
我的地盘模型
class Territory < ActiveRecord::Base
attr_accessible :name, :publisher
has_many :addresses, :dependent => :destroy
validates :name, :presence => true, :uniqueness => true
end
谢谢
Thomas您需要为此使用嵌套资源,如中所述。这种嵌套资源的另一个很好的例子是
这样,当您为
我在试着理解对虾宝石
我能够让它生成一个pdf。gem文件中的每个gem包括:
gem 'mysql', '~> 2.8.1'
gem 'prawn', '~> 0.12.0'
gem 'pdf-reader', '~> 0.10.0'
gem 'Ascii85', '~> 1.0.1'
在config/application.rb中:
config.autoload_paths << "#{Rails.root}/app/reports"
然后我调用索引
在将一个正在进行的应用升级到3.1之后,我不得不更改一个清除密码和密码确认字段的测试。我没有测试空值属性,而是测试缺少的值属性
这很好,但是当我关闭字段清除以使测试失败时,它仍然通过,因为字段仍然被清除,值仍然丢失。以前,我在create下的相应控制器中有行,用于在用户创建失败时清除字段,以便在重新显示表单时字段将为空。现在看来,这已不再必要
密码和确认字段现在是默认行为吗?是
从:
Rails 3.0.0 2010年8月29日
默认情况下,password_字段以nil值呈现,使得密码的使用在
我目前有一个文件app/assets/javascripts/application.js,其中有一个需求列表,当我运行rake-assets:precompile时,它会将所有列出的文件清理、缩小并连接到public/assets/application.js。一切都很好
但是,我想添加另一个名为“show_tale.js”的预编译js文件,其中包含不同的js文件列表。我在app/assets/javascripts中添加了一个show_table.js文件,其中包含需求列表。但是,当我执行r
我有一个Rails RESTful web服务应用程序,它接受来自客户机的值以增加数据库中的值。数据库值是一个整数,但是当使用rspec测试代码时,传入的值被解释为字符串
我正在使用Rails 3.1和Ruby 1.9.2
以下是rspec代码片段:
...
it "should find Points and return object" do
put :update, :username => "tester", :newpoints => [10, 15, 0], :for
我正在ruby on rails应用程序中实现
到目前为止,我做得很好。现在我想检索与精确值匹配的结果。
e、 g.如果有两条记录的标题为“曾经”和“曾经”,
“title:onceon”应仅返回一个标题为“onceon”的示例代码:
Tire.search 'articles', do |search|
search.size 100 # Limit record
search.from 0 # start offeset
# se
Rails 3是否具有与MVC3等效的区域?我想我以前见过它,但现在找不到任何关于它的信息 您可以使用routes.rb中描述的名称空间功能
# Sample resource route within a namespace:
namespace :admin do
# Directs /admin/products/* to Admin::ProductsController
# (app/controllers/admin/products_
我一直在关注backbone.js的Railscast教程,我想扩展该功能以包括键盘控制。我将以下内容添加到我的show视图中:
class Raffler.Views.EntryShow extends Backbone.View
template: JST['entries/show']
events:
'click .back': 'showListing'
'keyup': 'goBack'
showListing: ->
Backbone.
我是rails新手。有没有人能告诉我,是否有一种快速简便的方法来生成rtf文档,供人们使用rails下载?
例如,如果我有“views/users/show.html.erb”,视图通常输出为html,因此我希望人们能够下载相同的rtf文档?是您要寻找的宝石。这里有一些rtf生成的示例
将其添加到initializers/mime_types.rb:
Mime::Type.register "text/richtext", :rtf
为您提供想法的代码:
document = RTF::Doc
我正在使用继承的_资源来干燥控制器,但无法确定如何使特定控制器正确运行。在我的模型中,用户只有一个人。我希望它可以选择性地嵌套,嵌套时作为单例,不嵌套时作为非单例。换句话说,我希望能够列出所有已知的人(/people),获取person#5(/person/5),并获取用户10的唯一的人(/user/10/person)。routes.rb中的以下内容:
resources :users
resource :person
end
resources :people
…按照我的预期设置路线:
我有两个资源控制器,其中我使用一个slug来表示ID(友好的ID gem)
我可以为路线上的一个资源显示路径,但不能同时为两个资源显示路径。即
root :to => 'home#index'
match '/:id' => "properties#show"
match '/:id' => "contents#show"
基本上我想要的网址是
# Content
domain.com/about-us
domain.com/terms
# Property
domain.c
我使用“AWS::S3.url\u for”方法获取对S3对象的访问url。
我成功地获取了访问url,并成功地从S3获取了obj
但是,我很少无法使用“AWS::S3.url_for”方法获得的访问url从S3获取obj。
S3返回403错误
(我尝试使用“AWS::S3.url_for”方法获取同一obj的访问url。再次,我成功地从S3获取了obj…)
有人知道为什么吗
谢谢默认情况下,的AWS::S3::S3Object#url_的url在一小时后过期。指定:expires参数以更改此行
在“我的显示视图”中,每当我尝试使用图像\标记生成器显示图像时,rails不会在“我的显示视图”内的公用文件夹中查找图像
例如:
<%= image_tag "thumbnails/fish.jpg" %>
我将回形针Gem用于我的上载模型,出于安全原因,我将上载保存到与公用文件夹不同的文件夹中,是的,此显示视图确实出现在上载控制器中
在我的上传模式中,我使用此行将上传保存到非公用文件夹:
has_attached_file :upload, :path => ":rail
当我使用这个代码时
Rails::Generators.invoke("active_record:migration","create_tests",{:behavior=>:invoke, :destination_root=>Rails.root})
为了生成迁移文件,我生成了以下类:
class CreateTests < ActiveRecord::Migration
def up
end
def down
end
end
class Creat
我认为使用OpenStreetMap(或OpenCycleMap)作为google API中的地图平铺提供者会很好。下面是一个如何在纯javascript中完成此操作的示例:
<script type="text/javascript">
var element = document.getElementById("map");
/*
Build list of map types.
You can also use
在服务器上部署rails应用程序和rails 3方面我都是新手。我需要你的帮助。
我在以下版本中开发了一个rails项目。
Ruby 1.9.2
Rails 3.2.5,但我在服务器上部署此项目的地方,默认情况下安装了Rails 2.1.2和Ruby 1.8.7。这是因为我的权限有限,所以我必须要求我的服务提供商安装新版本的唯一方法。
如果我安装“bundler”gem并运行bundle安装,它会工作吗?正如我提到的rails版本3.2.5一样,gem'rails'3.2.5'也在其中?(为一个
如何在rake任务中运行以下查询
DELETE FROM crawled_categories WHERE id NOT IN (
SELECT id FROM (
SELECT DISTINCT(site_id, parent_category, breadcrumb), max(id) AS id
FROM crawled_categories
WHERE map_id is null
GROUP BY site_id, par
我有以下Rails图像上传程序代码:
class PhotoUploader < BaseUploader
...
# Create different versions of your uploaded files:
version :thumb do
process :resize_to_fill => [80, 80]
end
# Process files as they are uploaded:
process resize_to_fi
我正在使用rolify管理用户角色,当我尝试通过用户表单更新角色时,我收到以下消息:
can't mass-assign protected attributes: role_ids
这让人感到安慰,但我想知道,我如何允许管理员通过批量分配更新用户角色,而不允许普通用户更新角色?您可以在用户模型中使用不同的属性可访问列表:
attr_accessible :name
attr_accessible :name, :role_ids, :as => :admin
然后在管理控制器的创建和
我试图将代码从haml转换为erb,但我被卡住了,不知道为什么
以下是我要转换的原始代码:
这就是我现在拥有的。有人能看一下并给我一些提示吗。谢谢
我最怀疑这句话:
%tr[resource]{奇数或偶数}
我想可能是这样的:
RubyMine在这行给了我一个错误:
|
|
查看此处的文档:
我得说:
<tr id="<%= "#{resource.class.name.underscore}_#{resource.to_key}" %>" class="<
我是RSpec和BDD的新手。我也是一个铁路迷,我一直在尽可能多地关注测试、RSpec、BDD和水豚。具体地说,我一直在一遍又一遍地关注,其中包括在保存规范后使用Guard自动运行测试,并涉及到Capybara和集成规范
这就是我关于BDD和RSpec/Capybara的背景。我从今天开始。现在我的情况是:
我有一个模型任务。当我创建一个新任务时,我会在顶部收到一条快闪消息,说它已成功创建,并被引导到一个新任务页面。然而,在实现此功能之前,我想先编写一个测试来演示此功能(正如Bob叔叔曾经说过的
我会简明扼要的。我正在尝试将三个表合并在一起,以获得所有未存档客户端的总开票小时数乘以开票费率。这是我目前在控制器中的配置:
@total_due = Client.find(:all, :joins => [:invoices, :invoice_line_items], :select => "SUM(invoice_line_items.hours * invoice_line_items.rate) as total", :group => "clients.archi
我有两种模式:员工模式和公司模式。在Employee模型中,我有一个before_create回调,但在执行@company.employees.createparams时,回调不会被触发。我有哪些选项可以让回调正常工作?我使用before_create,因为我只想在创建对象时第一次启动它。好吧,这应该已经起作用了,您确定员工已被验证并持久化了吗?或者在保存之前试试,:on=>:create,即使我猜你会遇到同样的问题。显然,验证发生在任何事情之前。如果对象有效,则验证在验证之前工作,验证之后创
我正在将一个应用程序从Rails 2.2.2迁移到Rails 3。我有一个表单,用于更新用户信息,该表单在Rails2中完全可用,但在Rails3中中断
提交表单时,将调用一个方法,该方法创建用户对象,然后尝试执行如下更新:
if @user.update_attributes params[:user] ## line 126
然后控制器抛出此异常:
undefined method `update_attributes' for #<ActiveRecord::Relation:0x
我正在配置Vlad部署器来部署我的应用程序,我遇到了一个奇怪的错误,我找不到答案
问题如下,在我迁移之后,它将获得我的应用程序的最新“版本”,并获得一个不存在的版本,即使之前运行的更新提供了最新版本
** Invoke vlad:update (first_time)
** Execute vlad:update
ssh -p 10022 labpress.com.ar 'cd /opt/prj/agregador/scm && rm -rf/opt/prj/agregador/
我的应用程序在使用时突然停止工作,并显示错误消息:
“应用程序中出现错误,无法提供您的页面。请稍后再试
如果您是应用程序所有者,请查看日志以了解详细信息。”
我的日志文件在下面,我怀疑这在heroku端是个问题,但它已经持续了半个多小时了
2013-06-02T16:42:00.904689+00:00 app[web.1]: 0
2013-06-02T16:42:00.904689+00:00 app[web.1]: 0
2013-06-02T16:42:00.904689+00:00 app
我不确定我的逻辑是否正确,但我正在这样做。。我有管理,我可以手动添加客户,我有前端,客户可以注册
客户\u控制器.rb
class CustomersController < Admin::AdminController
def new
@customer = Customer.new
@customer.build_user
end
def create
@customer = Customer.new(params[:customer])
...
我将pry rails与jRuby 1.7.5(1.9.3p392)和rails 3.2.9一起使用。每当我在pry中时,它输出多个页面(例如:当我执行帮助时),并且必须设置分页符时,我将被卡住,屏幕末端如下所示:
<page break> --- Press enter to continue ( q<enter> to break ) --- <page break>
^M^M^M^M^M^M^M^M^C^C[2013-10-31 21:46:20] ER
如何将rails包含方法与类似于此查询的sunspot slor一起使用
Sunspot.more_like_this(xyz)
xyz变量是我的设计模型变量,我想使用include方法包含关联的设计器和图像模型
我想在这里使用includes方法,就像我们在sql查询中使用它一样
Model.where(:something => something_else).includes(:model2)
您阅读Sunspot.index User.includes:account.limi
我正在创建一个Redmine插件,并希望将Haml用于视图模板。有一个现有的插件具有Haml视图(),它不包含任何使Haml工作的特殊代码,除非您将require'Haml'添加到主应用程序的Gemfile
下面是发生的情况——模板系统正确加载.html.haml文件,但呈现haml标记(就像呈现ERB一样)
我试图在不同的时间间隔插入require'haml',但没有效果。我甚至尝试手动激活Haml.init_rails(…),如中所建议的那样。我试过在一些地方插入它,在一个Rails.con
是否可以在初始值设定项中使用类似于current\u user或user.current的内容?我试过类似的方法
Something = Something::Some.new configure do |something|
something.somethingelse = current_user.key
end
但它声明找不到键,但我知道键是用户表中的一列。我可以在模型或控制器下执行something=current_user.key或something=user.key,
我的日志级别默认为“info”。但我看到发送的电子邮件被记录下来了。我怎样才能只为电子邮件关闭此功能
这在我的config/application.rb中:
# See everything in the log (default is :info)
# config.log_level = :debug
如果将其放入environment.rb文件中,则不应记录电子邮件:
ActionMailer::Base.logger = nil
我需要从可搜索块内部访问rails模型实例,如下所示
class Product
include MongoMapper::Document
include Sunspot::Rails::Searchable
key :field_names, Array
searchable do |ss|
self.field_names.each do |field|
ss.do
我有多个Rails应用程序。我正在使用rbenv维护我的红宝石,并利用Bundler为每个项目管理我的宝石。我没有使用任何gemset功能
要安装项目的gems,我需要:
bundle install --path .gems
从每个应用程序的根目录。绑定器文档状态为:
Bundler will remember this value for future installs on this machine
好吧,我不希望它在机器上被记住,只是在每个项目上。这是否意味着每次在我的任何应用程序上
我有一张表,上面有问题:id,:描述和模型question.rb,还有一张表,上面有答案:id,:question\u id,:answer\u描述和模型answer.rb
我如何在一个表格部分(如问卷或考试)的一页中显示所有问题及其答案
有什么想法吗 您需要在问题模型中添加一个多关联:
has_many :answers
然后,您可以使用显示问题中每个答案的子表单
您可能还希望查看在控制器中加载问题和答案,将其作为实例变量公开,并将其传递给partial?由于我们看不到,目前还不清楚您尝试过
我们的Rails 4.2.0应用程序的资产有一个奇怪的问题。CSS在开发和生产上的实时编译中表现良好(config.assets.compile=true)。但是在生产服务器上预编译资产后没有CSS:
RAILS_ENV=production bundle exec rake assets:clean assets:precompile RAILS_RELATIVE_URL_ROOT=/mysuburi
预编译中没有错误,下面是public/assets下的文件:
-rw-rw-r-- 1 u
1 2 3 4 5 6 ...
下一页 最后一页 共 216 页