目标:使用Sinatra + DataMapper + Postgres + Heroku部署一个简单的测试应用程序
问题:当使用gem'dm-postgres-adapter'gem'dm-sqlite-adapter'将应用程序推送到Heroku时,我得到了这个.使用本机扩展安装do_sqlite3(0.10.7)不幸的是,发生了致命错误.请通过https://github.com/carlhuda/bundler/issues向Bundler问题跟踪器报告此错误,以便我们对其进行修复.谢谢!
我访问了那个github链接,有人遇到了同样的问题,但是被定向到Heroku,https://github.com/carlhuda/bundler/issues/1488.我已经发送电子邮件到Heroku的邮件列表,我正在等待回复.
我遇到了LoadError: no such file to load -- dm-sqlite-adapter
所以我把它添加到Gemfile和Gemfile.lock中,这是我所能得到的
我试图在本地安装和设置Postgres,但那是我正在慢慢学习但却无法开始工作的新的痛苦.
我也在这里用一个类似的问题阅读了每一个问题,有些人向我推进了这一点,有些人没有得到提问者的回答而留下一个谜.
-----------------
source :rubygems
gem 'sinatra', '1.1.0'
gem 'thin', '1.2.7'
gem 'data_mapper'
gem 'dm-postgres-adapter'
gem 'dm-sqlite-adapter'
Run Code Online (Sandbox Code Playgroud)
------------------------
...
dm-sqlite-adapter (1.2.0)
dm-do-adapter (~> 1.2.0)
do_sqlite3 (~> 0.10.6)
...
Run Code Online (Sandbox Code Playgroud)
--------------------
web: bundle exec ruby recall.rb -p $PORT
Run Code Online (Sandbox Code Playgroud)
---------------------
require 'rubygems'
require 'sinatra'
require 'data_mapper'
DataMapper.setup(:default, ENV['DATABASE_URL'] || "sqlite3://#{Dir.pwd}/recall.db")
class Note
include DataMapper::Resource …Run Code Online (Sandbox Code Playgroud) 现在我正在浏览Ember.js指南中的每一页和代码片段,并构建一个小样本应用程序.有些我已经坚持了一段时间但已经解决了.然而,这个让我迷惑不解.
在http://emberjs.com/guides/controllers/representing-multiple-models-with-arraycontroller/ 它也在这里,但不使用.get('songs")http://emberjs.com/guides/controllers/表示-一个单模型与- objectcontroller /
App.SongsRoute = Ember.Route.extend({
setupController: function(controller, playlist) {
controller.set('model', playlist.get('songs'));
}
});
Run Code Online (Sandbox Code Playgroud)
我不知道playlist.get('songs')引用了什么.我假设它是一个模型对象数组内部对象但显然我错了.但是,由于他们站点的示例代码没有模拟存根数据可以工作,我只是猜测我的所有测试.
这里提供的代码有一些注释掉的位,看看我在测试什么.
<script type="text/x-handlebars" data-template-name="songs">
<h1>Playlist</h1>
<ul>
{{#each}}
<li>{{name}} by {{artist}}</li>
{{/each}}
</ul>
</script>
<script type="text/x-handlebars" data-template-name="playlist">
<h3>Playlist: </h3>
</script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/1.0.0-rc.3/handlebars.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/ember.js/1.0.0-rc.6/ember.min.js"></script>
<script type="text/javascript">
window.App = Ember.Application.create();
App.Router.map(function () {
this.resource('songs');
this.resource('playlist');
});
App.IndexRoute = Ember.Route.extend({
redirect: function() {
this.transitionTo('songs');
}
});
// App.SongsRoute = Ember.Route.extend({
// setupController: function(controller, model) {
// controller.set('model', model);
// },
// model: …Run Code Online (Sandbox Code Playgroud)