Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 从控制器访问模型方法_Ruby On Rails_Ruby_Model View Controller_Class_Model - Fatal编程技术网

Ruby on rails 从控制器访问模型方法

Ruby on rails 从控制器访问模型方法,ruby-on-rails,ruby,model-view-controller,class,model,Ruby On Rails,Ruby,Model View Controller,Class,Model,我对rails比较陌生,正在尝试为以下内容找出正确的语法 我有一个使用该方法的事务模型 def self.add_external_transaction_for information ... end 在transaction.rb中声明 我要做的是从另一个名为DepositsController的控制器调用add_external_transaction_,用于存款模型,如deposits_controller.rb中的存款模型 ActiveRecord::Transactions.ad

我对rails比较陌生,正在尝试为以下内容找出正确的语法

我有一个使用该方法的事务模型

 def self.add_external_transaction_for information
...
end
在transaction.rb中声明

我要做的是从另一个名为DepositsController的控制器调用add_external_transaction_,用于存款模型,如deposits_controller.rb中的存款模型

ActiveRecord::Transactions.add_external_transaction_for(@deposit)
但是,我看到以下错误

undefined method `add_external_transaction_for' for ActiveRecord::Transactions:Module

谁能帮帮我吗。我需要能够拥有一个与从控制器访问的事务模型关联的方法,而不必创建新的事务实例来访问该方法,如果您的事务模型是这样启动的:

类事务


然后
Transaction.add\u external\u Transaction\u for(@deposit)
应该可以正常工作,不需要将其范围限定到ActiveRecord模块。此外,您可能会看到与ActiveRecord::Transactions模块的命名冲突。

如果您的事务模型是这样启动的:

类事务

然后
Transaction.add\u external\u Transaction\u for(@deposit)
应该可以正常工作,不需要将其范围限定到ActiveRecord模块。此外,您可能会看到与ActiveRecord::Transactions模块的命名冲突