我需要将一个变量传递给另一个控制器.我有以下与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)
你知道为什么会这样吗?
我有一个使用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) 如何更改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
但是,我想知道是否有更简单的方法.
我在网页上有许多具有相同类的元素.当我将其中一个悬停时,我想强调所有这些元素.我怎么能在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) 奇怪的是,我还没有找到关于这个主题的任何内容......
如何对我的Rails服务器提供的JSON进行排序?我目前正在使用ActiveModel Serializer:
embed :ids, include: true
attributes :id, :name
has_many :places
Run Code Online (Sandbox Code Playgroud)
我想对嵌入式进行排序places.
我找到的唯一答案是这个问题,但它解释了默认情况下序列化程序的排序方式,而不是我如何排序.
出于某种原因,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_user的new,我可以告诉我的当前用户的电子邮件new视图.但是,在我的create控制器中,current_user返回nil.
我create通过表单(提交)访问了该操作.
在提交表单之前,我验证输入,然后向Stripe发送请求以从表单中获取令牌.如果没有错误(验证和条带),我然后发送表单.
这可能是原因吗?
更新2
在我的错误消息中,我的会话转储是空的,而它应该包含current_user信息...
更新似乎我的个人电子邮件地址已经使用多年了.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)
出于某种原因,我得到所有用户'关于'信息,但不是他/她的电子邮件!
我做错了什么?
当我使用我的密钥库时,我收到以下错误:
$ 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,但没有一个解决方案有效...
有没有人遇到过同样的问题?
我有以下管道来在语料库上执行机器学习.它首先提取文本,用于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) 我和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(包括路线)创建了一个要点.