问题标签 [mapping-model]
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.
javascript - 在 AngularJS 中设置动态 ng-model 名称
我有一个名为的对象uniqueLists
,如下所示:
我正在尝试从此列表中构建搜索功能。目前,我可以像这样在页面上的复选框中显示所有列表项(以下代码使用Jade
Node / ExpressJS的模板引擎,即使您不熟悉它也很容易理解。缩进==子节点上面的线)
我唯一遇到的问题是ng-model
我的表单和复选框。我想要form
的ng-model == {{key}}
. 我试过设置它,但它破坏了 Angular。我也尝试过ng-model='uniqueLists[index][0]'
,但是再次,Angular 不会解析它,只是将每个表单的模型都设为 string uniqueLists[index][0]
。
同样处理input
复选框,我想要他们的ng-model="{{value}}"
. 有没有办法在我的控制器中做到这一点?我想不出任何可以在ng-repeat
.
给任何偶然发现这个问题的人的小提示
正如您将在下面的答案/小提琴中看到的那样,当您在 an 中引用对象/位置时,ng-model
它们不会在 DOM 中呈现为正确的名称,但它们似乎可以与 Angular 一起使用,就好像它们是一样的。
例如,在上面的代码中,将ng-model="uniqueLists[key][val]"
DOM 中的呈现设置为ng-model="uniqueLists[key][val]"
,但表现得好像是ng-model="uniqueLists[name][string1]"
.
似乎是 Angular 的一个奇怪的怪癖,这让我大吃一惊,因为我在将ng-model
浏览器连接到控制器之前检查了浏览器中的名称,当我看到它没有解析对象以获得正确的值时,我认为它不是工作。
ios - IOS Core-data - 无法在具有相同方案的两个模型之间迁移数据
我有一个 1.0 版本,目前在应用商店中分发。该版本使用1.0版本的模型。模型商店中的一些实体填充了预定义的数据,因此应用程序与已包含此数据的商店打包在一起,应用程序不允许用户更改这些实体(只读)。商店是 SQLite 类型。
我发现在 1.0 版中,实体(这些预定义实体之一)中有一个属性包含错误值(对于该实体的所有实例)。我想在 2.0 版中解决这个问题。
所以我想,对于 2.0 版,让我们更改模型内容,因此现在该实体的所有实例中的属性都将包含正确的值。所以我修改了商店(没有改变 scheme 的模型版本),所以它包含正确的值。
这是问题所在,如果我在从未安装过 1.0 版的设备上安装 2.0 版,我可以在应用程序中看到正确的值,一切正常。但是,如果我在 1.0 版(更新)之上安装 2.0 版,该应用程序仍会显示它在 1.0 版中显示的值。
我立即得出的结论是,新版本不会将新版本中的数据迁移到旧版本中的数据,感染,我在苹果文档中读到迁移通常是从旧商店到新商店完成的。而且由于旧商店包含错误的值,我在新商店也看到了它。
我得出一个结论,我必须定义一个迁移,以便在 2.0 版本中存储正确的值。
这是我尝试过的:
轻量级迁移(使用相同的版本模型)-> 仍然看到版本 1.0 的值。
为具有相同方案的模型创建了一个新版本,创建了一个从模型 1 映射到模型 2 的映射模型。
2.a. 使用映射模型进行迁移,该模型指定目标的属性由源的属性填充 -> 仍然看到 1.0 版的值。
2.b。使用没有属性规则的映射模型进行迁移 -> 仍然看到版本 1.0 的值
2.c。使用映射模型进行迁移,该模型指定目的地的属性填充目的地的属性 -> 仍然看到版本 1.0 的值
2.d。轻量级迁移 -> 仍然……</p>
我使用以下代码启动迁移:
angularjs - ng-model 不适用于 ngAutocomplete
我在我的 Web 应用程序中使用 angularjs。我有一个文本框,其中使用自动完成功能选择位置。这是通过 ngAutocomplete.js 完成的(参考此示例http://plnkr.co/edit/il2J8qOI2Dr7Ik1KHRm8?p=preview)。最初加载页面时,我需要从数据库加载位置。它现在不工作。我该如何解决?
javascript - 遇到问题 - 在 AngularJS 中,选择框默认值选择并将新字段添加到现有模型
堆栈:AngularJS 1.2
我面临的问题是将选择框选择为服务器为 JSON 中的 order.status 字段传递的默认值(“已发货”)-
控制器:
https
://gist.github.com/pawank/8079603
HTML:
https ://gist.github.com/pawank/8079624
问题 1:如何使 ID 为“selectedStatus”的选择框设置为默认值“Shipped”?
问题 2save_order_edit_form()
:单击“保存更改”时,“order.comment”没有从 HTML 函数中传递给控制器
任何帮助表示赞赏。
谢谢,
ios - 如何避免用于小型数据模型更改的巨大 .xcmapingmodel 文件?
我目前有一个独特的MyProject.xcdatamodeld文件。执行以下操作相当容易,因为不需要额外的步骤:
- 添加字段/类
但是如果我想的话,我需要一个MyProject.xcmapingmodel :
- 删除字段/类
- 重命名字段/类
- 更改字段的类型
我的问题是.xcmappingmodel的初始大小(从模型 v1 到其自身)从 2 MB 到 10 MB 不等,使我的应用程序突然变大两倍!
如果我只想做一个微小的改变(删除或重命名一个字段),有没有办法在不增加这么大的尺寸的情况下做到这一点?
ios - CoreData 轻量级迁移崩溃,即使添加了映射模型
在我的 CoreData 模型中,我创建了一个抽象实体 ( IDManagedObject
) 来为我的其他实体共享一个公共属性。
当我第一次运行它时,我遇到了几个Cannot merge multiple root entity source tables into one destination entity root table
错误。
完整的错误如下:
有趣的是,它只显示了这两个实体的错误,但我还有更多。
经过一番搜索,我发现我需要添加一个映射模型来在新旧版本之间迁移。所以我通过 Xcode 中的 Cmd-N 添加它并选择源和目标模型。
但我仍然收到错误消息。
两者shouldMigrateStoreAutomatically
和shouldInferMappingModelAutomatically
都设置为true
。
我在这里想念什么?
旧模型在当前用 Objective-C 编写的应用程序中,新模型在用 Swift 编写的应用程序的新版本中,现在也使用CloudKit
. 使用 Xcode 12.2。
如果需要,我很乐意添加更多信息,只是不知道与该问题相关的内容。