标签: ruby-on-rails-plugins

使用Authlogic保存用户时,Crypted_pa​​ssword为null

当我尝试使用AL创建新用户时,我的生产安装上出现了一个奇怪的错误:

ActiveRecord :: StatementInvalid:Mysql :: Error:列'crypted_pa​​ssword'不能为null:INSERT INTO users

特别奇怪的b/c它在我当地的盒子上按预期工作.

两个盒子上的RUNning Rails 2.3.2和ruby 1.8.7.

user.rb:
class User < ActiveRecord::Base
 before_create :set_username
  acts_as_authentic do |c|
    c.require_password_confirmation = false
    c.login_field = "email"
    c.validates_length_of_password_field_options = {:minimum => 4}  
    c.validate_login_field = false  #don't validate email field with additional validations 
  end
end
Run Code Online (Sandbox Code Playgroud)

这是我的生产控制台的输出:

>> u = User.new
=> #<User id: nil, username: nil, email: nil, crypted_password: nil,
    password_salt: nil, persistence_token: nil, single_access_token: nil,
    perishable_token: nil, login_count: 0, failed_login_count: 0,
    last_request_at: nil, current_login_at: nil, last_login_at: nil,
    current_login_ip: …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails authlogic ruby-on-rails-plugins

3
推荐指数
1
解决办法
3046
查看次数

Rails插件 - 作为插件安装或安装为Gem

我是rails的新手,对插件有疑问.在ROR应用程序中使用第三方插件时,您可以采用两种方法:

1)使用sudo gem install GEM安装gem,然后在rails项目中"require"它

2)使用script/generate插件安装PLUGIN安装插件.代码中的插件出现在您的供应商目录中,然后您很高兴(有时,我无法通过此方法使Devise工作).

既然看起来这两种方法都完成了同样的事情,为什么我要选择一种方法而不是另一种方法.

谢谢,

rubygems ruby-on-rails ruby-on-rails-plugins

3
推荐指数
1
解决办法
2360
查看次数

在Rails应用程序中的电子邮件客户

我需要我的应用程序有一个带有电子邮件功能的模块.这将具有电子邮件客户端的所有功能.每个用户都有一个收件箱,发件箱,发送文件夹,自定义文件夹,子文件夹等.他们应该能够发送,接收,转发,回复电子邮件.我可以使用任何宝石/插件吗?如果可以选择与Google Apps等集成,请建议.

email-client rubygems ruby-on-rails ruby-on-rails-plugins

3
推荐指数
1
解决办法
1945
查看次数

插件不在开发模式下重新加载

我写的一个插件有一个奇怪的问题.奇怪的是,我有另外一个打开各种ActiveRecord类的插件,它没有自动重新加载的问题.

在我的插件init.rb文件中

User.class_eval do
  has_one :reputation
  include Karma 
  alias :rep :reputation
end
Run Code Online (Sandbox Code Playgroud)

如果我在生产模式或rails控制台中运行它没有问题.当我在开发中运行它时它会加载一次,但除非我重新启动服务器,否则永远不会再加载它.

我在我正在使用的其他插件(acts_as_readable)中找不到任何特殊内容,它以相同的方式打开User.


编辑:

我做了:

ActiveRecord::Base.class_eval do
  class << self
    def has_karma_values
      has_one :reputation
      alias :rep :reputation
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

在plugiin的init.rb文件中做了

class User < ActiveRecord::Base
...
has_karma_values
...
end
Run Code Online (Sandbox Code Playgroud)

并且得到关于has_karma_values不存在的相同错误.此时尚未加载插件.

令人困惑的是,作为可读的行为完全没有问题

User.class_eval do
  has_many :readings
end

ActiveRecord::Base.send :include, ActiveRecord::Acts::Readable
Run Code Online (Sandbox Code Playgroud)

但我的确如此.

这是我完整的init.rb文件

require 'reputation'
require 'karma_name'
require 'karma_tag'
require 'karma_title'
require 'acts_as_karmable'
require 'karma'
require File.expand_path('../lib/generators/karma_generator', __FILE__)

KarmaTitle.setup 'Default'

ActiveRecord::Base.class_eval do
  class << self
    def has_karma_values
      has_one :reputation
      alias :rep …
Run Code Online (Sandbox Code Playgroud)

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

3
推荐指数
1
解决办法
475
查看次数

rails 3.1,capybara-webkit,为什么page.execute_script失败?

安装capybara-webkit后,我尝试在规范中尝试测试,这是我的测试:

Capybara.default_driver = :webkit

page.execute_script("$('#submit_direction').attr('value', '1');$('#quizForm').submit()")
Run Code Online (Sandbox Code Playgroud)

然后,我收到此错误:

/home/sam/.rvm/gems/ruby-1.9.3-p0@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:136:警告:不安全的世界可写dir/home/sam/Documents/PATR中的RoR,模式040777 undefined | 0 | ReferenceError:找不到变量:$

Capybara :: Driver :: Webkit :: WebkitInvalidResponseError:Javascript无法执行

有什么好主意吗?

ruby-on-rails-plugins capybara ruby-on-rails-3 capybara-webkit

3
推荐指数
1
解决办法
7903
查看次数

在插件中混淆activerecord方法

我正在尝试编写一个插件,以下列方式为ActiveRecord中的某些方法添加别名:

class Foo < ActiveRecord::Base
  include MyOwnPlugin
  acts_as_my_own_plugin :methods => [:bar]

  def bar
    puts 'do something'
  end
end
Run Code Online (Sandbox Code Playgroud)

在插件内:

module MyOwnPlugin
  def self.included(base)    
    base.class_eval do
      extend ClassMethods
    end
  end
  module ClassMethods
    def acts_as_my_own_plugin(options)
      options[:methods].each do |m|
        self.class_eval <<-END
          alias_method :origin_#{m}, :#{m}
        END
      end
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

这种方法不起作用,因为当运行#acts_as_my_own_plugin时,Foo #bar尚未定义,因为它尚未运行.

把acts_as_my_own_plugin:方法=> [:巴] AFTER条函数声明将工作.然而,这并不漂亮.

我希望能够将acts_as_my_own_plugin置于类定义之上,就像大多数插件一样.

是否有另一种方法来满足这种条件?

ruby activerecord ruby-on-rails ruby-on-rails-plugins

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

Rails:管理已读/未读消息

对于类似论坛的应用程序,我需要能够向每个用户显示未读(新)消息.是否有任何Rails插件/ gem用于此目的?

或者:有没有任何提示以有效的方式完成这项工作?我正在考虑一个额外的数据库表,为每个用户存储每条消息的未读状态(或读状态?).但这似乎是蛮力的方法,也许有一个更聪明的解决方案......

祝愿乔治

ruby-on-rails ruby-on-rails-plugins

2
推荐指数
2
解决办法
5045
查看次数

Rails"script/plugin"安装http://github.com...git挂起'git pull'

每当我运行rails脚本/插件安装来使用git安装插件时,从github它就会"挂起".

$ script/plugin -v install http://github.com/ryanstout/blog_kit.git
Run Code Online (Sandbox Code Playgroud)

它"挂起".-v给出了以下输出:

Plugins will be installed using http
git init
Initialized empty Git repository in /home/XXX/vendor/plugins/blog_kit/.git/
git pull --depth 1 http://github.com/ryanstout/blog_kit.git
Run Code Online (Sandbox Code Playgroud)

这就是它挂起的地方.('XXX'由我在这个外出中编辑)

当我用^ C中断该命令,然后手动运行'git pull --depth 1 ...时,它也会挂起.

  1. 我可以很好地克隆该存储库:网络似乎不是问题.
  2. git在我的道路上.
  3. 当运行rails -g foo时,我收到很多关于不在git下的目录的错误.大概相关.
  4. 'lsof -i | grep github'显示以下内容:

    git-remot 11710 ber 8u IPv4 182786 0t0 TCP yasmine.fritz.box:42324->github.com:www(CLOSE_WAIT)git-remot 11710 ber 9u IPv4 182798 0t0 TCP yasmine.fritz.box:42325->github.com: www(CLOSE_WAIT)git 11712 ber 8u IPv4 182786 0t0 TCP yasmine.fritz.box:42324->github.com:www(CLOSE_WAIT)

    所以看起来实际上有一个连接,但没有任何东西被拉入.

我有什么想法可以深入研究这个问题?我错过了一些README吗?

git github ruby-on-rails-plugins

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

(rails)脚本/插件安装 - 这意味着什么?

我有愚蠢的问题,上面找不到答案.
我试图从https://github.com/paytonrules/selenium-on-rails安装Selenium,
他们说:

安装:

在Rails上安装Selenium:脚本/插件安装

我应该在哪里写这些文字?
从rails根目录终端 - 没有影响.

我甚至没有文件夹"script"中的文件夹"plugin",并且创建没有帮助.拜托,请为我解决这个问题

selenium install ruby-on-rails ruby-on-rails-plugins

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

如何安装wkhtmltopdf?

现在我正在使用rails 3.0.0.i我正在使用Ubuntu 11.10,64位os.i想要安装wkhtmltopdf.please告诉我静态版本的wkhtmltopdf.

ruby-on-rails ruby-on-rails-plugins wkhtmltopdf ruby-on-rails-3 wicked-pdf

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