小编mat*_*att的帖子

Heroku rails Procfile

我是Heroku的新手.

我将我的Rails应用程序上传到Heroku,并希望使用Thin而不是Webrick运行它.遵循Heroku的指南我应该web: bundle exec rails server thin -p $PORT -e $RACK_ENV用来创建procfile.但是我总是得到回应web:: command not found.

我错过了什么?

ruby-on-rails heroku

28
推荐指数
1
解决办法
2万
查看次数

HAML:form_tag困境(缩进?)

我正在制作"用户设置表单",并坚持使用HAML:

= form_tag('/')
  - [1,2,3].each do |i|
    =  check_box_tag "accept#{i}"
  = submit_tag
Run Code Online (Sandbox Code Playgroud)

这导致"语法错误,意外的kENSURE,期待$ end".

工作变体是

= form_tag('/')
  - [1,2,3].each do |i|
  =  check_box_tag "accept#{i}"
  = submit_tag
Run Code Online (Sandbox Code Playgroud)

结果是

 <input id="accept1" name="accept1" type="checkbox" value="1" />
    <input name="commit" type="submit" value="Save changes" />
    <input id="accept2" name="accept2" type="checkbox" value="1" />
    <input name="commit" type="submit" value="Save changes" />
    <input id="accept3" name="accept3" type="checkbox" value="1" />
    <input name="commit" type="submit" value="Save changes" />
    <form action="/" method="post"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="tuniieYp9hgvGBMaYDjK2l3Mgjpxo9F1LPzqEF4ykHg=" /></div>
Run Code Online (Sandbox Code Playgroud)

错误:控制外部表格标签,3次提交按钮.

任何有关修复的想法都将受到赞赏.谢谢!

haml ruby-on-rails

20
推荐指数
1
解决办法
2万
查看次数

Heroku推app应用程序问题

我安装了Heroku并设置了一个帐户,但出于某种原因,每当我尝试将应用程序推送到网站时,我都会收到此错误.

$ git push heroku master
!  No such app as first_app
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

我已经检查过看到heroku看到了git

$ git remote -v
heroku  git@heroku.com:first_app.git (fetch)
heroku  git@heroku.com:first_app.git (push)
Run Code Online (Sandbox Code Playgroud)

如何让heroku识别我的git文件?

git heroku

18
推荐指数
3
解决办法
2万
查看次数

如何将rails更改为开发模式

在铁路(3.2.3)的文档中说

在开发模式(默认情况下你正在使用它)中,Rails会根据每个浏览器请求重新加载您的应用程序,因此无需停止并重新启动Web服务器.

但显然我的应用程序开箱即用于生产模式.(我可以输入Rails.env并查看它).

为什么?

然后我转到environment.rb并添加

ENV["RAILS_ENV"] = "development"
Run Code Online (Sandbox Code Playgroud)

而且还在生产中.任何的想法?

编辑:你走了

#Load the rails application
require File.expand_path('../application', __FILE__)

# Initialize the rails application
MyAppName::Application.initialize!

ENV["RAILS_ENV"] = "development"
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-3

13
推荐指数
3
解决办法
3万
查看次数

从TestCase调用Sinatra应用程序实例方法

我在一个Sinatra应用程序中有一个util方法,我想从我的测试中进行测试TestCase.

问题是我不知道如何调用它,如果我只是使用app.util_method我有错误NameError: undefined local variable or method 'util_method' for #<Sinatra::ExtendedRack:0x007fc0c43305b8>

my_app.rb:

class MyApp < Sinatra::Base
  # [...] routes methods

  # utils methods
  def util_method
    return "hi"
  end
end
Run Code Online (Sandbox Code Playgroud)

my_app_test.rb:

require "my_app.rb"
require "test/unit"
require "rack/test"

class MyAppTest < Test::Unit::TestCase
  include Rack::Test::Methods

  def app
    MyApp.new
  end

  # [...] routes methods tests

  def test_util_method
    assert_equal( "hi", app.util_method )
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby rack sinatra

13
推荐指数
1
解决办法
3542
查看次数

显示过时的宝石?

为了避免崩溃,我指定了我的每个gem的版本号Gemfile:

gem 'sass-rails',   '~> 3.1.5'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '~> 1.0.3'
gem 'haml-rails', "~> 0.3.4"
gem 'simple_form', '~> 1.5.2'
Run Code Online (Sandbox Code Playgroud)

但至少我想知道是否有一些我没有安装过的新版本.例如,simple_form 2.0.0已经发布.

我可以检查RubyGems上的每个gem,但是必须有一个自动工具来完成这项工作,对吧?

ruby gem bundler

12
推荐指数
1
解决办法
2735
查看次数

使用Sinatra时,如何控制静态资产的缓存?

我正在使用最新的Sinatra,我正在Heroku上主持.有没有办法可以为/public目录中提供的静态资产设置缓存标头?

/public在检查已定义的任何路由之前,Sinatra提供目录中的文件,因此我不能只是cache_control路由中的方法.

/public目录包含我的应用程序的CSS和JavaScript.我不希望浏览器每次都下载这些文件,因为它们不会经常更改.

ruby heroku sinatra

11
推荐指数
1
解决办法
4137
查看次数

PostgreSQL的颜色有什么区别?

我正在尝试根据https://devcenter.heroku.com/articles/heroku-postgresql#local-setup上的说明设置PostgreSQL的本地版本,以便在Heroku上使用我的Rails应用程序.

当我为不同的heroku配置grep'd时

(heroku config | grep HEROKU_POSTGRESQL)
Run Code Online (Sandbox Code Playgroud)

我收到了以下回报:

HEROKU_POSTGRESQL_AQUA_URL:   postgres://mzqgqmkhlsgufo:Hk-Nu5SF6amY9mgl2n6u-Yi6U-@ec2-54-243-228-246.compute-1.amazonaws.com:5432/d8jndm2sub3lbt
HEROKU_POSTGRESQL_VIOLET_URL: postgres://nviwubpznhhgkv:siEYPLdOknBWOj1K3HePMn21DS@ec2-54-243-188-54.compute-1.amazonaws.com:5482/ddr1fm1ou7ha9s
Run Code Online (Sandbox Code Playgroud)

不同的颜色有什么意义吗?我可以更好地使用一个而不是另一个或者它们只是随机颜色?对不起,如果这是一个愚蠢的问题,但我不打算找到解决这个问题的问题.

postgresql heroku

11
推荐指数
1
解决办法
2189
查看次数

Rails,Heroku和UTF-8中的无效字节序列错误

我在Redis中有一个短信队列.假设redis中的消息是这样的:

"niño" 
Run Code Online (Sandbox Code Playgroud)

(发现非标准字符).

rails app显示消息队列.当我在本地测试时(Rails 3.2.2,Ruby 1.9.3)一切都很好,但是在Heroku雪松上(Rails 3.2.2,我相信有红宝石1.9.2)我得到了臭名昭着的错误:ActionView::Template::Error (invalid byte sequence in UTF-8)

阅读并重新阅读我在网上找到的所有内容后,我仍然坚持如何解决这个问题.

任何帮助或指向正确的方向非常感谢!

编辑:

我设法找到了解决方案.我最终使用了Iconv:

string = Iconv.iconv('UTF-8', 'ISO-8859-1', message)[0]
Run Code Online (Sandbox Code Playgroud)

我发现周围的建议答案似乎都不适用于我的情况.

ruby-on-rails heroku utf-8 redis

10
推荐指数
1
解决办法
6149
查看次数

Haml:link_to vs button_to

据我所知,link_to用于get方法,并button_to用于post方法.

另一方面,我被告知使用HTML5语义,<button>用于任何类型的可点击...好吧,按钮.如果我有一个可点击的按钮,将用户发送到表单填写,我应该创建一个button_to或一个link_to

haml ruby-on-rails button hyperlink

10
推荐指数
1
解决办法
2万
查看次数