在继续阅读之前,我必须说我已经在google和stackoverflow上阅读并尝试了类似的问题和答案.
我的问题是:
还有其他想法吗?!
我是ruby,sinatra和padrino的新手,所以这可能是一个愚蠢的问题,但是:
有没有办法将orm添加到现有的应用程序中?
我的问题是我用以下命令行创建了一个应用程序:
$ padrino-gen project sample_blog -a mysql -b
Run Code Online (Sandbox Code Playgroud)
(我认为选择了默认的ORM.)
然后尝试添加模型:
$ padrino-gen model post title:string body:text
<= You need an ORM adapter for run this generator. Sorry!
Run Code Online (Sandbox Code Playgroud)
如何在不重新编写整个应用程序的情况下添加orm?
它现在不是很重要,因为应用程序不包含任何内容,但我计划在后面添加测试,我想知道它是否容易.
感谢您的初学者提示.
我正在尝试本地化我的 Rails 应用程序(网络服务)。我安装了 gem 'rails-i18n',效果很好。
但它不翻译 ActiveRecord::RecordNotFound 消息。在Rails代码中: https://github.com/rails/rails/blob/3-2-stable/activerecord/lib/active_record/relation/finder_methods.rb
raise RecordNotFound, "Couldn't find #{@klass.name} with #{conditions.to_a.collect {|p| p.join(' = ')}.join(', ')}"
Run Code Online (Sandbox Code Playgroud)
看来该消息是硬编码的。
除了不使用 Model.find_by_'attribute' 之外,还有什么解决方案吗?
我想将复杂的json发送到put路由:
Restangular.one('model3ds', model.uuid).put(
api_key: "blabla"
model3d: { is_public: true }
)
Run Code Online (Sandbox Code Playgroud)
但它似乎不可能与Restangular,因为它发送:
api_key: "blabla"
model3d: "{\"is_public:\":true}"
Run Code Online (Sandbox Code Playgroud)
任何人都知道如何改变这种行为?
注意:我可以这样做,但如果我有一个完整的对象要发送,而不仅仅是一个属性,那是不可能的.
Restangular.one('model3ds', model.uuid).put(
"model3d[is_public]": true
)
Run Code Online (Sandbox Code Playgroud) ruby ×2
activerecord ×1
angularjs ×1
bundler ×1
javascript ×1
json ×1
padrino ×1
rails-i18n ×1
restangular ×1
sinatra ×1