问题标签 [update-attributes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 将友好 ID 和 i18n 与 update_attributes 一起使用会导致覆盖
使用: - Rails 3.0.3 - Friendly_id 4.0.0 Beta 11 - Windows - i18n (0.6.0, 0.5.0) 根据“gem list”
设置: 我有一个使用瑞典语和英语作为语言进行计算的多语言网站。我正在使用friendly_id 创建对seo 友好的网址。
在我的 mysql 表中,我有列“slug”、“slug_se”和“slug_en”。我不确定是否需要使用“slug”列,它与“slug_en”相同。
问题: 使用“update_attributes”时,它会用“slug”(默认为英文)覆盖“slug_se”。因此,“slug”中的值写入“slug_se”。
疑难解答: - 我在 Google 上搜索过这个问题,但在 Google 论坛 (http://groups.google.com/group/friendly_id/browse_thread/thread/154f4a5024e23418) 上只找到了一个(未答复的)论坛主题,没有得到答复。- 我试图找到 update_attributes 的替代品,我可以通过 mysql 但那真的不整洁。
问题: - 我需要使用“slug”列吗?- 是否有不尝试更新 id 的 update_attributes 替代方法?- 你能看出我在做什么导致问题的错误吗?
代码: 型号:
ruby-on-rails - Thinking sphinx updates delta index even when no fields are updated
Even when no fields specified in update attributes actually changes , thinking sphinx sets delta = 1 which results in large number of unwanted queries being fired . can we do something to let sphinx know that there was no actual update.
initialization - mongoid.update_attributes 在新的嵌入对象上失败
我尝试使用其父级的 update_attributes 创建一个新的嵌入式对象。在 mongoid 2.0.0.beta20 这工作正常,但更新到 2.3.3 后,这失败了。
要重现,您可以使用此模型结构:
然后,在 ruby 控制台中运行:
这是因为嵌入对象在设置新值之前没有被初始化。这就是为什么 size 数组没有被初始化,因此仍然是 nil。使用 mongoid-2.0.0.beta20 (我从中升级),一切正常。有什么我想念的吗?新的 mongo-2.3.3 是否期望 ME 先初始化嵌入对象!?
感谢您的任何帮助|提示。
ruby-on-rails - Rails 3.1 创建操作中的奇怪 ActiveRecord 行为
使用 Rails 3.1.0
当'pmf = ...'行不存在时,我得到这条线
当存在“pmf = ...”行时,创建操作正常工作。到底是怎么回事?
ruby-on-rails - update_all 有效,但 update_attributes 无效
下面的两个代码用于更新数据库。
使用“update_attributes”属性的第一个版本不起作用
但是,下面使用“update_All”属性的代码似乎效果很好。
下面是 Emiexpression 的类代码:
我很困惑为什么会这样。
我没有在我的“Emiexperiment”模型中使用任何验证。
对此的任何提示都非常感谢。非常感谢您的帮助:)
ruby-on-rails - 验证上下文和更新属性
如何使用 update_attributes 指定 validation_context ?
我可以使用 2 个操作(没有 update_attributes)来做到这一点:
ruby-on-rails - Rails counter_cache 的关联正在使用 update_attributes 进行更新;counter_cache 列未更新
我正在运行一个使用 counter_cache 列的 Rails 2.3.14 应用程序,类似于:
如果我直接将我的工作室分配给一个组,计数器缓存会更新得很好。
但是,如果我将 group_id 批量分配给车间,在传统的 Rails 控制器样式中,缓存不会更新。我认为这是 2.3.14 中的一个错误。
它也存在于旧版本中: http ://railsforum.com/viewtopic.php?id=34473
但是,发布者的“解决方案”引入了一个重复计算错误 - 如果您直接分配,您将获得默认的 rails updater和callback-one,但它确实适用于 update_attributes。
所以,我可以做几件事——我可以从 params 哈希中去掉 group_id 并直接分配它。或者我可以在我的 Workshop 模型上对 update_attributes 进行猴子补丁来为我执行此操作。
我想避免删除 params 哈希,因为这不直观且不自我记录,此外,任何可能调用 @workshop.update_attributes 的人都会遇到相同的错误。Monkey-patching update_attributes 似乎是最安全的,但也是完全错误的。
还有其他建议吗?
谢谢!
ruby-on-rails - 更改路线后,Ruby on Rails 出现 update_attributes 问题
红宝石 1.9.2p290
导轨 3.1.0
我从脚手架构建了我的网站,并试图改变我的路线,所以,我可以使用:gameNumber,而不是使用:id。
在我的控制器中我改变了
从
至
在我看来我改变了
从
至
我遇到的问题是当我尝试更新时,我得到一个 nil 错误。我知道问题是因为更新按钮使用的是:id 而不是:gameNumber,我只是不确定如何修复它。这是与问题相关的相关代码。
控制器
形式
如果有人可以向我指出一个可以解释问题、帮助解释问题、提供解决方案或更好的方法的链接,我将不胜感激。
谢谢。
更新:
这是错误:
TicketsController 中的 NoMethodError#update
Rails.root: C:/home/workspace/App
应用程序跟踪
app/controllers/tickets_controller.rb:65:in block in update'
app/controllers/tickets_controller.rb:64:in
update'
要求
参数:
你也想要框架跟踪和完整跟踪吗?
更新 2:
如果我将以下内容添加到我的模型中:
我收到以下错误。
票证中的 NoMethodError#edit
显示 C:/home/workspace/App/app/views/tickets/_form.html.erb 其中第 1 行提出:
提取的源代码(在第 1 行附近):
模板包含的痕迹:app/views/tickets/edit.html.erb
Rails.root: C:/home/workspace/App
应用程序跟踪:
要求
参数:
ruby-on-rails - 即使没有更改,有没有办法防止 Rails 中的序列化属性更新?
这可能是所有新用户迟早会发现有关 Rails 的事情之一。我刚刚意识到 rails 正在使用 serialize 关键字更新所有字段,而没有检查内部是否真的发生了任何变化。在某种程度上,对于通用框架来说这是明智的做法。
但是有没有办法覆盖这种行为?如果我可以跟踪序列化字段中的值是否已更改,有没有办法防止它被推送到更新语句中?我尝试使用“update_attributes”并将散列限制为感兴趣的字段,但 rails 仍会更新所有序列化字段。
建议?
authentication - rails update_attributes
我的用户模型有
我对用户控制器的更新操作是
我的编辑视图是
问题是我只想更新模型的特定属性,而不是每次都输入密码。如果我不输入密码(和确认),我会收到验证错误)
我该如何解决这种情况?