我是RefineryCMS和Rails的初学者。我做了我的RefineryCMS应用程序,我试图生成我的引擎,如指南所述。我正在运行这个命令:
rails g refinery:engine article title:string reference:string file:resource在我进入Admin部分的视图中,没有任何按钮可供浏览,也没有任何文件资源所期望的按钮,只有一个框来介绍文本。这是表格的一部分:
<div class='field'>
<%= f.label :file_id -%>
<%= f.text_field :file_id -%>
</div>我必须更改引擎中的gemspec文件,正如前面提到的RefineryCMS Engines Error: did not have a valid gemspec
这是我的宝石档案的一部分:
ruby '2.1.1'
gem 'rails', '3.2.17'
gem 'pg'
# Refinery CMS
gem 'refinerycms', '~> 2.1.0'
# Optionally, specify additional Refinery CMS Extensions here:
gem 'refinerycms-acts-as-indexed', '~> 1.0.0'
# Refinery's news engine allows you to post updates to the news section of your website.
gem 'refinerycms-news', '~> 2.1.0'
gem 'refinerycms-articles', :path => 'vendor/extensions'我用的是Ubuntu 13.10
这是个窃听器还是我做错了什么?如何获得一个按钮来浏览该文件?
发布于 2014-04-09 18:34:23
好的,我已经想出了解决这个问题的方法,多亏了另一个等式:https://english.stackexchange.com/questions/11481
问题是生成器没有创建正确的视图和模型。你得用手做这个修改。
_form.html.erb:视图中的第一个
<div class='field'>
<%= f.label :file_id -%>
<%= render :partial => "/refinery/admin/resource_picker", :locals =>
{
:f => f,
:field => :file_id,
:resource => @article.file} %>
</div>现在将这一行添加到模型article.rb中。
belongs_to :file, :class_name=>'Resource'当然,您也必须修改显示视图。例如:
<section>
<h1>File</h1>
<p>
<%= link_to("Download", @article.file.url) if @article.file %>
</p>
</section>如果生成器能自动完成这一切,那就太好了,但是这样你就可以让它正常工作了。
https://stackoverflow.com/questions/22809447
复制相似问题