小编Jus*_* D.的帖子

Angular ng-click,调用控制器功能不起作用

我需要将一个变量传递给另一个控制器.我有以下与ListCtrl相关的代码:

<a href="#items" data-router="article" ng-click="changeListName('metro')">
Run Code Online (Sandbox Code Playgroud)

该链接将转到另一个控制器ItemCtrl.

我想将一个变量传递给ItemCtrl.我想过使用一个名为SharedProperties的服务:

service('sharedProperties', function () {
    var list_name = '';

    return {
        getListName: function() {
            return list_name;
        },
        setListName: function(name) {
            list_name = name;
        }
    };
});
Run Code Online (Sandbox Code Playgroud)

单击链接时,我调用角度单击事件来触发以下功能:

$scope.changeListName = function(name) {
    sharedProperties.setListName(name);
};
Run Code Online (Sandbox Code Playgroud)

但是,ng-click似乎不会更改我的共享属性的值...

UPDATE

我在由ng-click触发的函数内部发出一个警报,并触发警报,因为它应该是.

但是,当我写这样的函数时:

$scope.changeListName = function(name) {
    sharedProperties.setListName(name);
};
Run Code Online (Sandbox Code Playgroud)

它不起作用......它看起来像'sharedProperties.setListName(name);' 没有执行......

如果我把它放在具有虚拟名称的函数之外(例如,地铁),它可以工作..

更新3

我尝试了很多东西,我很有信心问题是这个功能:

$scope.changeListName = function(list_name) {
    sharedProperties.setListName(list_name);
};
Run Code Online (Sandbox Code Playgroud)

你知道为什么会这样吗?

angularjs

75
推荐指数
2
解决办法
44万
查看次数

Rails和bootstrap - 将HTML标记添加到提交按钮文本

我有一个使用ajax的like /不同按钮的表单:

= form_for like, :html => { :method => :delete}, :remote => true do |f|
= f.submit pluralize(@video.likes.count, 'like'), :class => "btn btn-warning btn-mini", "data-disable-with"=> "Just a moment..."
Run Code Online (Sandbox Code Playgroud)

表格完美无缺.

我想在提交按钮的文本前面添加一个图标.添加图标的haml代码如下(twitter bootstrap):

%i.icon-heart.icon-white
Run Code Online (Sandbox Code Playgroud)

有没有办法将这个HTML添加到按钮?我尝试将其添加为普通html,但rails将其呈现为文本.

UPDATE

我已经设法将提交按钮封装在包含图标和相应样式的span类中.我现在需要删除按钮上的每个样式......

%span.btn.btn-danger.btn-mini
  %i.icon-heart.icon-white
  = f.submit pluralize(@video.likes.count, 'like')
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails twitter-bootstrap

28
推荐指数
2
解决办法
3万
查看次数

更改文本will_paginate渲染

如何更改will_paginate显示的文本?

现在,它呈现Previous ... Next.我需要用法语Précédent ... Suivant.我查看谷歌并获得此链接:http://thewebfellas.com/blog/2010/8/22/revisited-roll-your-own-pagination-links-with-will_paginate-and-rails-3

但是,我想知道是否有更简单的方法.

ruby-on-rails

18
推荐指数
2
解决办法
7339
查看次数

将鼠标悬停在元素上并突出显示具有相同类的所有元素

我在网页上有许多具有相同类的元素.当我将其中一个悬停时,我想强调所有这些元素.我怎么能在CSS中做到这一点?

现在,我有这个CSS:

p.un:hover { background-color:yellow;}
Run Code Online (Sandbox Code Playgroud)

我的HTML:

<div class="book">
  <div class="page left">
    <p class="un">Karen…</p>
  </div>
   <div class="page right">
     <p class="un">Karen ne se retourne pas. Mme Tilford reste là, apparemment confuse et abattue.</p>
   </div>
Run Code Online (Sandbox Code Playgroud)

css css3

16
推荐指数
1
解决办法
2万
查看次数

如何排序Rails Active Model序列化程序的响应

奇怪的是,我还没有找到关于这个主题的任何内容......

如何对我的Rails服务器提供的JSON进行排序?我目前正在使用ActiveModel Serializer:

 embed :ids, include: true
 attributes :id, :name

 has_many :places
Run Code Online (Sandbox Code Playgroud)

我想对嵌入式进行排序places.

我找到的唯一答案是这个问题,但它解释了默认情况下序列化程序的排序方式,而不是我如何排序.

ruby-on-rails active-model-serializers

12
推荐指数
1
解决办法
6846
查看次数

Rails设计 - current_user是零

出于某种原因,current_user返回nil在我的模型少控制器(Subscriptions).我没有在互联网上找到任何证明这种行为的理由......

class SubscriptionsController < ApplicationController  
  def new
    ...
  end

  def create
    current_user    # returns nil
  end
end
Run Code Online (Sandbox Code Playgroud)

我有一个csrf元标记:

<meta content="xxx" name="csrf-token">
Run Code Online (Sandbox Code Playgroud)

我可以提供更多代码,但我不确定什么是有用的.

UPDATE

所以感谢评论/答案,我已经将问题指向了一个特定的行动:create.

如果我添加@user = current_usernew,我可以告诉我的当前用户的电子邮件new视图.但是,在我的create控制器中,current_user返回nil.

create通过表单(提交)访问了该操作.

在提交表单之前,我验证输入,然后向Stripe发送请求以从表单中获取令牌.如果没有错误(验证和条带),我然后发送表单.

这可能是原因吗?

更新2

在我的错误消息中,我的会话转储是空的,而它应该包含current_user信息...

ruby ruby-on-rails devise ruby-on-rails-3

11
推荐指数
2
解决办法
2万
查看次数

Facebook Graph没有返回电子邮件

更新似乎我的个人电子邮件地址已经使用多年了.Facebook将其标记为非活动状态,并且未将其作为JSON的一部分返回.

我使用此URL在客户端使用Facebook验证用户身份:

https://www.facebook.com/dialog/oauth?
  client_id=xxx&
  redirect_uri=https://www.facebook.com/connect/login_success.html&
  scope=email
Run Code Online (Sandbox Code Playgroud)

我收到一个代码然后交换一个令牌:

https://graph.facebook.com/oauth/access_token?
  code=xxx&
  client_id=xxx&
  client_secret=xxx&
  redirect_uri=xxx
Run Code Online (Sandbox Code Playgroud)

然后我将令牌发送到我的服务器,然后我获取Fb Graph以获取一些用户信息,包括电子邮件.

 https://graph.facebook.com/me?access_token=xxx
Run Code Online (Sandbox Code Playgroud)

出于某种原因,我得到所有用户'关于'信息,但不是他/她的电子邮件!

我做错了什么?

javascript facebook facebook-graph-api

8
推荐指数
1
解决办法
4373
查看次数

密钥库出错:解析广义时间,格式无效

当我使用我的密钥库时,我收到以下错误:

$ keytool -list -keystore instavert.keystore

  keytool error : java.security.cert.CertificateParsingException: java.io.IOException: Parse Generalized time, invalid format
Run Code Online (Sandbox Code Playgroud)

我搜索了谷歌和SO,但没有一个解决方案有效...

有没有人遇到过同样的问题?

android keystore android-keystore

6
推荐指数
1
解决办法
2277
查看次数

Scikit-learn zip参数#1必须支持迭代

我有以下管道来在语料库上执行机器学习.它首先提取文本,用于TfidfVectorizer提取n-gram,然后选择最佳特征.没有功能选择步骤,管道工作正常.然而,有了它,我得到了

 Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/sklearn/pipeline.py", line 90, in __init__
    names, estimators = zip(*steps)
TypeError: zip argument #1 must support iteration
Run Code Online (Sandbox Code Playgroud)

SGDClassifier().

pipeline = Pipeline([
    # Use FeatureUnion to combine the features
    ('features', FeatureUnion(
        transformer_list=[
            # N-GRAMS
            ('ngrams', Pipeline([
                ('extractor', TextExtractor(normalized=True)), # returns a list of strings
                ('vectorizer', TfidfVectorizer(analyzer='word', strip_accents='ascii', use_idf=True, norm="l2", min_df=3, max_df=0.90)),
                ('feature_selection', SelectPercentile(score_func=chi2, percentile=70)),
            ])),
        ],,
    )),

    ('clf', Pipeline([
        SGDClassifier(n_jobs=-1, verbose=0)
    ])),
])
Run Code Online (Sandbox Code Playgroud)

machine-learning feature-selection scikit-learn

6
推荐指数
1
解决办法
2284
查看次数

Sammyjs路线不使用Phonegap

我和SammyJs建立了一个应用程序.它目前在浏览器中完美运行.但是,当我使用PhoneGap将其打包到Android时,路由不再起作用.

我发现了这个问题.但是,给出的解决方案不起作用:

(function($) {

    var app = $.sammy('[role=main]', function() {
      this.disable_push_state = true;
      ...
    });
}
Run Code Online (Sandbox Code Playgroud)

有没有人遇到过同样的问题?

编辑

我也使用jquery mobile和以下脚本来禁用它的路由:

 <script type="text/javascript">
      // DISABLE JQM ROUTER
      $(document).bind("mobileinit", function () {
        $.mobile.ajaxEnabled = false;
        $.mobile.linkBindingEnabled = false;
        $.mobile.hashListeningEnabled = false;
        $.mobile.pushStateEnabled = false;
        $.mobile.changePage.defaults.changeHash = false;
      });
    </script>
Run Code Online (Sandbox Code Playgroud)

我用我的app sammy javascript(包括路线)创建了一个要点.

javascript sammy.js cordova

5
推荐指数
1
解决办法
449
查看次数