我正在考虑将RefineryCMS用于大型Web应用程序,其中包括新闻通讯,博客,论坛,教程等.创建我所知道的那些我认识的RefineryCMS会很棒.
我的问题是,RefineryCMS可以处理不同类型的用户具有不同类型的访问/权限吗?
如果我有一个"会员"用户,我想让他们能够访问博客和论坛,但如果我有一个"高级"用户,他们应该有权阅读新闻通讯,博客,论坛和教程."admin"用户应该能够管理和查看网站中的所有内容.
这种细粒度控制是否属于RefineryCMS的范围,我应该考虑从头开始创建这个网站吗?
我正在使用Rails 3,机械师2,黄瓜和rspec,并且有两个blueprints.rb文件.一个在spec目录中,一个在features/support目录中.
只有一个blueprints.rb文件是个好主意吗?
如果是,那么设置它的首选方法是什么?
对于同时我只是符号链接我的功能/支持/ blueprints.rb文件投机/ blueprints.rb这可能是错误的,但它为我工作.
我刚刚升级到ruby 1.9.3-p0和rails 3.2.0.我现在正试图在我的一个测试中使用调试错误
rspec spec -d
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误:
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:422:in `rescue in debug=': (RuntimeError)
**************************************************
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/ruby-debug-base19-0.11.25/lib/ruby_debug.so: undefined symbol: ruby_threadptr_data_type - /home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/ruby-debug-base19-0.11.25/lib/ruby_debug.so
If you have it installed as a ruby gem, then you need to either require
'rubygems' or configure the RUBYOPT environment variable with the value
'rubygems'.
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/ruby-debug-base19-0.11.25/lib/ruby-debug-base.rb:1:in `require'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/ruby-debug-base19-0.11.25/lib/ruby-debug-base.rb:1:in `<top (required)>'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/ruby-debug19-0.11.6/cli/ruby-debug.rb:5:in `require'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/ruby-debug19-0.11.6/cli/ruby-debug.rb:5:in `<top (required)>'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:408:in `require'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:408:in `debug='
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration_options.rb:19:in `block in configure'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration_options.rb:18:in `each'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration_options.rb:18:in `configure'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:21:in `run'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:80:in `run_in_process'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69:in `run'
/home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:10:in `block in autorun'
**************************************************
from /home/map7/.rvm/gems/ruby-1.9.3-p0@rails3.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:407:in …Run Code Online (Sandbox Code Playgroud) 我刚开始使用厨师独奏.我已经开始使用chef-solo从头开始构建我的Ruby on Rails Web服务器.除了我的bootstrapping文件(deploy.rb和install.rb),我有两个配置文件(solo.json和solo.rb).我已经设置了我的solo.json来运行一组将设置Web服务器的角色和配方.
现在我想使用chef-solo来构建一个带有我自己的自定义的mythtv盒子.我应该使用'web_server.json'和'mythtv.json'来列出创建这些服务器的不同配方/角色,而不是使用solo.json吗?
逻辑上它应该工作,但有更好的方法吗?/这是正确的方法吗?
到目前为止,这是我的完整设置(因为它为Ruby on Rails构建了一个Web服务器);
https://github.com/map7/chef-solo
一种方法是复制我的整个chef-solo目录并自定义它以创建我的Mythtv框,但后来我必须维护两套chef-solo bootstrappings和配置文件,并且在这两种情况下都会使用一些cookbook.比如在Mythtv和我的网络服务器上我想要的apache2.
我正在创建一个rails 3.2.x项目,我想在其中创建一个用于打印的样式表.我使用SASS和资产管道和我添加一个名为print.css.scss我需要在默认加载萨斯文件行.
我有一个班级内容,我将diplay设置为none以进行测试.如果我删除@media打印块然后它在屏幕上工作但仍然不在打印机中.
@media print {
.contents {
display: none;
}
}
Run Code Online (Sandbox Code Playgroud)
我已经在Chrome和Firefox中测试了打印,就像样式表没有加载打印一样,还有什么我需要配置的吗?
我正在使用Rails 3.0.20应用程序,我正在尝试通过部分传递局部变量,并且它显示"未定义的局部变量"我已经查看了此问题上的其他帖子并且无法修复它.
这是我要求渲染的意思
= f.fields_for :current_positions do |builder|
= render :partial => 'current_position_fields', :locals => {:f => builder, :foo => 'hi'}
Run Code Online (Sandbox Code Playgroud)
这是我的偏爱
%tr.pos_start
%td
= foo
= f.hidden_field :id, class: "pos_id"
= f.label :name, "Position Name"
%td= f.text_field :name
%tr.pos_loc
%td= f.label :location, "Position Location"
%td= f.text_field :location
%tr.pos_end
%td= f.label :year, "Position Year"
%td= f.text_field :year
%td.fields
= link_to_remove_fields "DEL", f
Run Code Online (Sandbox Code Playgroud)
错误消息是
undefined local variable or method `foo' for #<#<Class:0x00000008d4a050>:0x00000008d3c590>
Run Code Online (Sandbox Code Playgroud)
如果我= foo从代码中取出其他所有工作.
我正在使用Rails 3编写一个大型应用程序,我一直在创建搜索表单,如下所示:
= form_tag search_companies_path, :method => "get" do
= label_tag :search
= text_field_tag :search
= submit_tag "Search"
Run Code Online (Sandbox Code Playgroud)
这应该放在Helper方法还是Partial方法?
我试图让它通过帮助器工作:
module ApplicationHelper
def search_form(path)
form_tag path, :method => "get" do
label_tag :search
text_field_tag :search
submit_tag "Search"
end
end
end
Run Code Online (Sandbox Code Playgroud)
这会创建一个带按钮的表单,我在这里是正确的轨道吗?
将AngularJS与rails应用程序一起使用时,我在编辑记录时遇到问题,文本字段的值设置为空白.有没有办法告诉AngularJS使用值rails将表单元素作为初始值?
我已经整理了一个JSFiddle来演示我遇到的问题:
我正在使用RefineryCMS 2.1.2和Prawn.我有一个属性引擎,其中我有图像的属性.我可以在show模板中显示这些,image_fu但是当我尝试用这样的图片创建我的pdf时
class Refinery::Properties::PropertyPdf < Prawn::Document
def initialize(property)
super()
image @property.property_images.first.image.url, fit: [300,300]
end
end
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
ArgumentError (/system/images/W1siZiIsIjIwMTQvMDcvMTYvMTZfNTZfNDVfOTY3XzEuanBnIl1d/1.jpg not found):
prawn (1.1.0) lib/prawn/images.rb:145:in `verify_and_open_image'
prawn (1.1.0) lib/prawn/images.rb:79:in `build_image_object'
prawn (1.1.0) lib/prawn/images.rb:67:in `image'
vendor/extensions/properties/app/models/refinery/properties/property_pdf.rb:29:in `pictures'
vendor/extensions/properties/app/models/refinery/properties/property_pdf.rb:9:in `initialize'
vendor/extensions/properties/app/controllers/refinery/properties/properties_controller.rb:23:in `new'
vendor/extensions/properties/app/controllers/refinery/properties/properties_controller.rb:23:in `block (2 levels) in show'
actionpack (3.2.18) lib/action_controller/metal/mime_responds.rb:196:in `call'
actionpack (3.2.18) lib/action_controller/metal/mime_responds.rb:196:in `respond_to'
vendor/extensions/properties/app/controllers/refinery/properties/properties_controller.rb:20:in `show'
actionpack (3.2.18) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
actionpack (3.2.18) lib/abstract_controller/base.rb:167:in `process_action'
actionpack (3.2.18) lib/action_controller/metal/rendering.rb:10:in `process_action'
actionpack (3.2.18) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
activesupport (3.2.18) lib/active_support/callbacks.rb:447:in `_run__945948839670585827__process_action__3030439923241519075__callbacks'
activesupport (3.2.18) …Run Code Online (Sandbox Code Playgroud) 当我在我的生产机器上运行'RAILS_ENV =生产包exec rake assets:precompile'时出现此错误:
$ RAILS_ENV=production bundle exec rake assets:precompile --trace
** Invoke assets:precompile (first_time)
** Execute assets:precompile
/usr/local/rbenv/versions/2.1.0/bin/ruby /usr/local/rbenv/versions/2.1.0/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets --trace
** Invoke assets:precompile:all (first_time)
** Execute assets:precompile:all
** Invoke assets:precompile:primary (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment (first_time)
** Execute environment
rake aborted!
undefined method `fetch' for "\\# PostgreSQL. Versions 7.4 and 8.x are supported.":String
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activerecord-3.2.16/lib/active_record/connection_adapters/abstract/connection_specification.rb:35:in `resolve_string_connection'
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activerecord-3.2.16/lib/active_record/connection_adapters/abstract/connection_specification.rb:25:in `spec'
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activerecord-3.2.16/lib/active_record/connection_adapters/abstract/connection_specification.rb:130:in `establish_connection'
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activerecord-3.2.16/lib/active_record/railtie.rb:88:in `block (2 levels) in <class:Railtie>'
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-3.2.16/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-3.2.16/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
/usr/local/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-3.2.16/lib/active_support/lazy_load_hooks.rb:26:in …Run Code Online (Sandbox Code Playgroud) refinerycms ×2
rspec ×2
angularjs ×1
assets ×1
chef-infra ×1
cucumber ×1
debugging ×1
haml ×1
helper ×1
machinist ×1
partial ×1
postgresql ×1
prawn ×1
ruby ×1
sass ×1