Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.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 ng模型不适用于angularJS中的某些属性_Ruby On Rails_Angularjs_Angularjs Ng Model - Fatal编程技术网

Ruby on rails ng模型不适用于angularJS中的某些属性

Ruby on rails ng模型不适用于angularJS中的某些属性,ruby-on-rails,angularjs,angularjs-ng-model,Ruby On Rails,Angularjs,Angularjs Ng Model,嗨,我遇到了一个ng模型的问题。我想为管理员用户创建一个编辑页面,以编辑用户权限级别的其余部分。 因此,我在编辑页面中列出了所有用户的属性,这些属性应该显示当前值 我可以正确地更新所有属性,但是,问题是当访问编辑页面时,只显示某些属性,而不显示某些属性。我认为这是ng模式的问题 my_form.html.erb中的代码片段 <div class="col-md-12 space-1" ng-class="{ 'has-error' : form['email'].$invalid }"&

嗨,我遇到了一个ng模型的问题。我想为管理员用户创建一个编辑页面,以编辑用户权限级别的其余部分。 因此,我在编辑页面中列出了所有用户的属性,这些属性应该显示当前值

我可以正确地更新所有属性,但是,问题是当访问编辑页面时,只显示某些属性,而不显示某些属性。我认为这是ng模式的问题

my_form.html.erb中的代码片段

 <div class="col-md-12 space-1" ng-class="{ 'has-error' : form['email'].$invalid }">
  <label class="control-label">Email</label>
   <div class="input-icon right">
    <i ng-show="form['email'].$invalid" class="fa fa-warning tooltips" data-original-title="{{errors['email']}}" data-container="body"></i>
    <input ng-model= "user.email" name="email" type="text" class="form-control">
   </div>
 </div>
 <br>

<div class="col-md-12 space-1" ng-class="{ 'has-error' : form['events'].$invalid }">
  <label class="control-label">Event Permission Level : {{user.activities.events}}</label>
   <div class="input-icon right">
    <i ng-show="form['events'].$invalid" class="fa fa-warning tooltips" data-original-title="{{errors['events']}}" data-container="body"></i>
    <input ng-model= "user.activities.events" name="activities.events" type="range" max="2" min="0" class="form-control">
 </div>
 </div>
 <br> 

 <div class="col-md-12 space-1" ng-class="{ 'has-error' : form['admin_events'].$invalid }">
  <label class="control-label">Admin Event Permission Level : {{user.activities.admin_events}}</label>
   <div class="input-icon right">
    <i ng-show="form['admin_events'].$invalid" class="fa fa-warning tooltips" data-original-title="{{errors['admin_events']}}" data-container="body"></i>
    <input ng-model= "user.activities.admin_events" name="activities.admin_events" type="range" max="2" min="0" class="form-control">
</div>
 </div>
 <br> 

电子邮件

事件权限级别:{{user.activities.events}
管理员事件权限级别:{{user.activities.Admin_events}
上面的代码显示了3种不同的ng模型,1.user.email,2.user.activities.events 3.user.activities.admin_events

我处理它们的方式是相同的,但是当访问编辑页面时,只有电子邮件和事件属性显示当前值,而不是管理事件。我可以更新它们的值,但在访问编辑页面时,我无法让admin_事件显示其当前值。这很奇怪,不是吗。我的意思是,如果我能看到事件的值,为什么我不能看到admin_事件的值,因为它们都属于用户变量


有人能解释为什么会这样吗?这让我很困惑。非常感谢。

当它解决了问题时,我引用自己的评论:


如果只有
user.activities.admin\u events
不起作用,则可能与
\u
符号有关。请尝试使用驼峰大小写
user.activities.adminEvents
user.activities['admin\u events']

请创建一个小提琴来显示哪些不起作用。如果只有
user.activities.admin\u events
不起作用,它可能与
\u
符号有关。尝试使用camel case
user.activities.adminEvents
user.activities['admin\u events']
。它在fiddle上不起作用,因为它还需要rails后端。我的项目是rails和angularJS的混合。但是我可以把小提琴拉出来,这样你就可以看到我到目前为止做了什么,即使模型不在那里。好的,user.activites是一个hstore列。因此,我认为它是一个arrayok,因此
admin_events
实际上是
adminEvents
?它总是有助于在控制台中像@koox00建议的那样打印响应。谢谢大家!!下划线是完全有效的为什么要避免它?你能提供任何建议的链接吗?事实上,根据,@koox00是正确的。顺便说一句,过梁通常建议您避免使用。你确定这解决了问题吗?问题是属性确实被命名为
adminEvents
,而不是
admin\u events
,我在想JSHint,它建议你使用camelCase变量和点符号来访问对象属性。但再一次,我的属性是允许的@leo277:我的答案似乎不准确,你确定用camelCase解决问题吗?