- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我有一个预注册用户的应用程序。 future 的用户可以声明他们的个人资料,但管理员必须手动审核。
所以,我有一个表 users 和 user_revision。如果 claim 被管理员拒绝,我需要恢复所做的更改。
这是我的做法:
Followup.find(params[:followup]).user.update_attributes(UserRevision.find(followup.i_nid).attributes)
但由于某些原因突然出现以下错误,我不知道如何解决:
NoMethodError (undefined method `each' for "":String):
编辑:这是完整的轨迹
activerecord (3.2.13) lib/active_record/associations/collection_association.rb:310:in `replace'
activerecord (3.2.13) lib/active_record/associations/collection_association.rb:41:in `writer'
activerecord (3.2.13) lib/active_record/associations/builder/association.rb:51:in `block in define_writers'
activerecord (3.2.13) lib/active_record/attribute_assignment.rb:85:in `block in assign_attributes'
activerecord (3.2.13) lib/active_record/attribute_assignment.rb:78:in `each'
activerecord (3.2.13) lib/active_record/attribute_assignment.rb:78:in `assign_attributes'
activerecord (3.2.13) lib/active_record/persistence.rb:216:in `block in update_attributes'
activerecord (3.2.13) lib/active_record/transactions.rb:313:in `block in with_transaction_returning_status'
activerecord (3.2.13) lib/active_record/connection_adapters/abstract/database_statements.rb:192:in `transaction'
activerecord (3.2.13) lib/active_record/transactions.rb:208:in `transaction'
activerecord (3.2.13) lib/active_record/transactions.rb:311:in `with_transaction_returning_status'
activerecord (3.2.13) lib/active_record/persistence.rb:215:in `update_attributes'
app/controllers/admin/contractor_controller.rb:66:in `reject'
actionpack (3.2.13) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
actionpack (3.2.13) lib/abstract_controller/base.rb:167:in `process_action'
actionpack (3.2.13) lib/action_controller/metal/rendering.rb:10:in `process_action'
actionpack (3.2.13) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
activesupport (3.2.13) lib/active_support/callbacks.rb:458:in `_run__3878365275348389010__process_action__3682866777824238009__callbacks'
activesupport (3.2.13) lib/active_support/callbacks.rb:405:in `__run_callback'
activesupport (3.2.13) lib/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
activesupport (3.2.13) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (3.2.13) lib/abstract_controller/callbacks.rb:17:in `process_action'
actionpack (3.2.13) lib/action_controller/metal/rescue.rb:29:in `process_action'
actionpack (3.2.13) lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
activesupport (3.2.13) lib/active_support/notifications.rb:123:in `block in instrument'
activesupport (3.2.13) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
activesupport (3.2.13) lib/active_support/notifications.rb:123:in `instrument'
actionpack (3.2.13) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
actionpack (3.2.13) lib/action_controller/metal/params_wrapper.rb:207:in `process_action'
activerecord (3.2.13) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
actionpack (3.2.13) lib/abstract_controller/base.rb:121:in `process'
actionpack (3.2.13) lib/abstract_controller/rendering.rb:45:in `process'
actionpack (3.2.13) lib/action_controller/metal.rb:203:in `dispatch'
actionpack (3.2.13) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
actionpack (3.2.13) lib/action_controller/metal.rb:246:in `block in action'
actionpack (3.2.13) lib/action_dispatch/routing/route_set.rb:73:in `call'
actionpack (3.2.13) lib/action_dispatch/routing/route_set.rb:73:in `dispatch'
actionpack (3.2.13) lib/action_dispatch/routing/route_set.rb:36:in `call'
journey (1.0.4) lib/journey/router.rb:68:in `block in call'
journey (1.0.4) lib/journey/router.rb:56:in `each'
journey (1.0.4) lib/journey/router.rb:56:in `call'
actionpack (3.2.13) lib/action_dispatch/routing/route_set.rb:612:in `call'
warden (1.2.3) lib/warden/manager.rb:35:in `block in call'
warden (1.2.3) lib/warden/manager.rb:34:in `catch'
warden (1.2.3) lib/warden/manager.rb:34:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
rack (1.4.5) lib/rack/etag.rb:23:in `call'
rack (1.4.5) lib/rack/conditionalget.rb:25:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/head.rb:14:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/flash.rb:242:in `call'
rack (1.4.5) lib/rack/session/abstract/id.rb:210:in `context'
rack (1.4.5) lib/rack/session/abstract/id.rb:205:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/cookies.rb:341:in `call'
activerecord (3.2.13) lib/active_record/query_cache.rb:64:in `call'
activerecord (3.2.13) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
activesupport (3.2.13) lib/active_support/callbacks.rb:405:in `_run__3678957069864581916__call__81522373500476479__callbacks'
activesupport (3.2.13) lib/active_support/callbacks.rb:405:in `__run_callback'
activesupport (3.2.13) lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
activesupport (3.2.13) lib/active_support/callbacks.rb:81:in `run_callbacks'
actionpack (3.2.13) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/reloader.rb:65:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
railties (3.2.13) lib/rails/rack/logger.rb:32:in `call_app'
railties (3.2.13) lib/rails/rack/logger.rb:16:in `block in call'
activesupport (3.2.13) lib/active_support/tagged_logging.rb:22:in `tagged'
railties (3.2.13) lib/rails/rack/logger.rb:16:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/request_id.rb:22:in `call'
rack (1.4.5) lib/rack/methodoverride.rb:21:in `call'
rack (1.4.5) lib/rack/runtime.rb:17:in `call'
activesupport (3.2.13) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.4.5) lib/rack/lock.rb:15:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/static.rb:63:in `call'
railties (3.2.13) lib/rails/engine.rb:479:in `call'
railties (3.2.13) lib/rails/application.rb:223:in `call'
rack (1.4.5) lib/rack/content_length.rb:14:in `call'
railties (3.2.13) lib/rails/rack/log_tailer.rb:17:in `call'
thin (1.5.1) lib/thin/connection.rb:81:in `block in pre_process'
thin (1.5.1) lib/thin/connection.rb:79:in `catch'
thin (1.5.1) lib/thin/connection.rb:79:in `pre_process'
thin (1.5.1) lib/thin/connection.rb:54:in `process'
thin (1.5.1) lib/thin/connection.rb:39:in `receive_data'
eventmachine (1.0.3) lib/eventmachine.rb:187:in `run_machine'
eventmachine (1.0.3) lib/eventmachine.rb:187:in `run'
thin (1.5.1) lib/thin/backends/base.rb:63:in `start'
thin (1.5.1) lib/thin/server.rb:159:in `start'
rack (1.4.5) lib/rack/handler/thin.rb:13:in `run'
rack (1.4.5) lib/rack/server.rb:268:in `start'
railties (3.2.13) lib/rails/commands/server.rb:70:in `start'
railties (3.2.13) lib/rails/commands.rb:55:in `block in <top (required)>'
railties (3.2.13) lib/rails/commands.rb:50:in `tap'
railties (3.2.13) lib/rails/commands.rb:50:in `<top (required)>'
script/rails:6:in `require'
script/rails:6:in `<main>'
最佳答案
我在 #rubyonrails IRC channel 上帮助 bl0b 解决了这个问题。结果是堆栈跟踪中的这一行:
activerecord (3.2.13) lib/active_record/associations/collection_association.rb:310:in `replace'
表示 AR 正在尝试分配给集合关联。我要求 OP 通过并尝试在 update_attributes
调用中一次分配一个属性。原来是 services
属性导致的,因为记录上还有一个名为“services”的关联。
从要更新的属性列表中删除 services
属性可以解决这个问题。
关于ruby-on-rails - 未定义的方法 `each' 为 "":String with update_attributes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18626246/
obj.update_attribute(:only_one_field, 'Some Value') obj.update_attributes(field1: 'value', field2: '
我正在尝试在某个操作后更新对象的属性。如果我使用 update_attribute,一切都会正确保存到数据库中,但我有很多需要更新的东西,所以它变得非常重复。 这工作正常: order.update_
所以我有一个编辑页面,上面有大量的可编辑字段......简单的更新......@patient.update_attributes(params[:patient]) ……一切都很好,除了…… 在这
我在以多级嵌套形式更新数据时遇到问题。我使用部分来包含创建和更新 View 的所有字段,并且我在创建时没有问题。只有更新。 基本上结构(简化)是: user has_one profile profi
提交表单后,调试功能中会显示正确的自定义参数,但进入控制台时会显示默认参数。 Controller def update current_user.update_attributes(para
这个问题在这里已经有了答案: 9年前关闭。 Possible Duplicate: Rails update_attributes without save? 从根本上说,我想做一个 ActiveRe
我的模型描述了段落和图像,其中每个段落都有_许多图像。对于图像处理,我使用回形针。对于批量分配,我将图像用作段落的nested_attributes。相关代码: 模型/段落.rb class Para
我有一个用户数据库作为User(id:integer,username:string,created_at:datetime,updated_at:datetime,password_digest:s
基本上,警报和更新之间存在一对多关系。许多更新属于一个警报。现在我的问题是我无法更新数据库中的任何记录。我可以毫无问题地创建新记录。 Rails 记录器将实际记录打印到日志中。正如您从日志文件中看到的
如果一个模型在本地更改了一个属性,然后又将其改回,ActiveRecord 不会将更改发送到数据库。这对性能非常有用,但如果其他东西更改了数据库,并且我想将其恢复为原始值,则更改不会生效: model
我对 Rails 很熟悉,但在 JavaScript 和 Ajax 方面却完全迷失了。 我试图做到这一点,以便当用户单击列表中的某个项目时,会在该项目上使用 Ajax 调用 update_attrib
我在使用 update_attribute 时遇到问题。我只想更新我指定的属性,但另一个属性是(在我无权访问的不同位置更改的属性)。 这是一个简化的版本: user = User.find(1) p
为什么会出现此错误?我没主意了。 # 的未定义方法“update_attributes” 代码: exists = Vote.where(comment_id: @comment.id).exists
我想在保存事件之前进行检查,这样我就可以在每次更新特定字段时发出警报。我尝试使用“changed”来检测它,但是 update_attributes 简化了数据库验证,所以我无法使用 changed?
所以我有一个用户模型,包括登录名、电子邮件地址、密码、密码确认、姓名、头像(图片)等。前 5 个有验证,基本上说明所有 5 个都需要存在才能创建一个新模式。 但是,这会给我带来更新方面的问题。 我有一
我遇到了一个奇怪的事情。我有一个模型 GuardianUpdate,它的字段“read”是一个 bool 值。当我在记录上调用 update_attribute(:read, true) 时,rail
我发生了多态关联关系,当我通过它检索记录时,例如: hour = my_model.find( keeper_id ).hours.where( "day = ?", day_index ) 然后尝试
我想知道在 update_attributes 语句之后更新了哪些字段。我正在过滤可更新的参数并从 params[:model] 中删除那些我不想更新的参数.现在,一些新的可更新参数可能与旧参数具有相
def update @album = Album.find(params[:id]) if @album.update_attributes(params[:album]) redi
这似乎是一个愚蠢的问题,但我无法在任何地方找到答案! 有没有可能update_attributes()并跳过验证,如 save(validate: false) ? 我有一个很长的表格,有些冗长tex
我是一名优秀的程序员,十分优秀!