首先,我能够使用Oauth成功进行身份验证.我正在使用Padraic的教程:http://blog.astrumfutura.com/archives/411-Writing-A-Simple-Twitter-Client-Using-the-PHP-Zend-Frameworks-OAuth-Library-Zend_Oauth.html
现在,我的问题是我已经有一个使用Zend_Service_Twitter的Twitter模型.但由于Zend_Service_Twitter需要密码,我决定扩展它.我的新课程是这样的:
<?php
/**
* I'm trying to extend Zend_Service_Twitter to use Oauth instead
*/
require_once 'Zend/Service/Twitter.php';
class Mytwitterapp_Twitteroauth extends Zend_Service_Twitter
{
/**
* Oauth
* @var Zend_Oauth_Token_Access
*/
protected $_token;
/**
* Array for Zend_Oauth_Consumer (i think)
* @var Zend_Config_Ini
*/
protected $_config;
/**
* @param object $token
* @return void
*/
public function __construct(Zend_Oauth_Token_Access $token)
{
$this->_config = new Zend_Config_Ini(APPLICATION_INI, APPLICATION_ENV);
$this->_token = $token;
$this->setUri('http://twitter.com');
$client = $this->_token->getHttpClient($this->_config->oauth->toArray());
}
public function _init()
{
$client = …Run Code Online (Sandbox Code Playgroud) 我对PDT感到沮丧.我想将.phtml文件打开为HTML BUT .phtml被"锁定"到PHP内容类型,并且无法解锁它!
在HTML中打开.phtml文件会更有意义(对于Zend Framework用户),因为.phtml包含更多HTML和一些Javascript而不是PHP代码.
问题是,wtf会让Eclipse开发人员锁定某些文件类型吗?有没有办法"解锁"这个?
如果我右键单击该文件并选择打开方式 - > HTML编辑器,那么我收到此错误:
Could not open the editor: org.eclipse.wst.sse.ui.internal.StructuredTextViewer cannot be cast to org.eclipse.php.internal.ui.editor.PHPStructuredTextViewe
Run Code Online (Sandbox Code Playgroud)
帮助任何人?
非常感谢,温伯特
在Zend Framework 1.8中,在Zend Framework 1.8中注册新插件的推荐方法是什么?
<?php
/**
* Enter description here...
*
*/
class Wenbert_Controller_Plugin_CheckHasAccess extends Zend_Controller_Plugin_Abstract {
/**
* Enter description here...
*
* @param Zend_Controller_Request_Abstract $request
*/
public function preDispatch(Zend_Controller_Request_Abstract $request) {
echo 'This plugin is called...';
}
}
Run Code Online (Sandbox Code Playgroud)
我记得在1.8之前的版本中做过类似的事情:
require_once 'Wenbert/Controller/Plugin/CheckHasAccess.php';
$frontController = Zend_Controller_Front::getInstance();
$frontController->registerPlugin(new Wenbert_Controller_Plugin_CheckHasAccess());
Run Code Online (Sandbox Code Playgroud)
在ZF 1.8中进行此操作的最佳/推荐方法是什么?
提前致谢!
-Wenbert
假设我在forms.py中有这个表单:
CATEGORY_CHOICES= ((1,'Cat1'),
(2,'Cat2'),
(3,'Cat3'),
(4,'Cat4'),
)
class AddMessageForm(forms.Form):
title = forms.CharField(max_length=250)
groupname = forms.CharField(widget=forms.HiddenInput)
categories = forms.ChoiceField(choices = CATEGORY_CHOICES, required=True)
body = forms.CharField(widget=forms.Textarea)
Run Code Online (Sandbox Code Playgroud)
现在,CATEGORY_CHOICES是"硬编码的".这有效,但我需要在views.py中添加CATEGORY_CHOICES - 我需要做一些dbqueries来获取每个组下的"类别".
我该怎么做?
PS:我设法通过做这样的事情对我的views.py中的HiddenInput(groupname)做了同样的事情:
form = AddMessageForm(
initial={'groupname': groupname},
)
Run Code Online (Sandbox Code Playgroud)
我希望我明白我的问题.任何澄清等,请添加评论.
问候.w ^
Zend Framework有这个"运行"按钮......这适用于各个php文件.但我很好奇如果您使用Zend Framework(或其他),如果所有(请求等)必须首先通过引导程序文件,然后执行您正在编辑的实际文件,这将是如何工作的?
我是Python的新手.我现在正在运行Python2.6.我正在关注Python网站上的教程.我的问题是当我尝试按照这里的说明操作时:
http://py-psycopg.darwinports.com/
我得到的东西......
sudo port install py-psycopg
... bunch of errors here...
Error: The following dependencies failed to build: py-mx python24
Run Code Online (Sandbox Code Playgroud)
我正在运行MacOS X 10.4.
我如何使这项工作?
任何回复将不胜感激.
更新:
运行下面的代码后,我得到以下错误:
$ sudo port install py26-psycopg2
Warning: Skipping upgrade since openssl 0.9.8k_0 >= openssl 0.9.8k_0, even though installed variants "" do not match "+darwin". Use 'upgrade --enforce-variants' to switch to the requested variants.
Warning: Skipping upgrade since readline 6.0.000_1 >= readline 6.0.000_1, even though installed variants "" do not match "+darwin". Use 'upgrade …Run Code Online (Sandbox Code Playgroud) 我不确定最好的方法是什么.但是在http://knockoutjs.com/documentation/computedObservables.html中有一节说明"确定属性是否是计算的可观察值".我曾经isComputed检查过该属性是否是一个计算的observable.
我想self.formItems()在将值传递给我的服务器之前排除/删除计算的observable .
以下是我的代码的一部分,其中包含将数据发送回服务器的AJAX请求.
for (var prop in self.formItems()) {
// console.log(ko.isComputed(self.formItems()[prop].isRadio)); //true (because this is computed)
// console.log(ko.isComputed(self.formItems()[prop].field_label)); //false (because this is not a computed element)
for(var form_prop in self.formItems()[prop]) {
// console.log(form_prop+': '+ko.isComputed(self.formItems()[prop][form_prop]));
if(self.formItems()[prop].hasOwnProperty(form_prop) && !ko.isComputed(self.formItems()[prop][form_prop])) {
// result_no_computed_observables[prop][form_prop] = ko.toJS(self.formItems()[prop][form_prop]);
console.log(self.formItems()[prop][form_prop]);
}
// ko.cleanNode(self.formItems()[prop][form_prop])
}
}
$.ajax({
'type': 'POST',
'url': appUrl+'/editors/saveform/'+memberListId+'.json',
'cache': false,
'dataType': 'json',
'contentType': 'application/json',
'data': ko.toJSON({
'id': theFormDetails.id(),
'name': theFormDetails.name(),
'description': theFormDetails.description(),
'success_text': theFormDetails.success_text(),
'success_redirect': theFormDetails.success_redirect(),
'form_elements': self.formItems() …Run Code Online (Sandbox Code Playgroud) 我想在Django中执行一个半复杂的查询.例如,我想要的东西是这样的:
SELECT
b.*,
(SELECT count(id) FROM comments c WHERE c.blog_id = b.id) AS number_of_comments
FROM blog b
WHERE 1
Run Code Online (Sandbox Code Playgroud)
从我的PHP背景来看,Code Igniter和Zend Framework都有"查询构建器".您可以使用框架中的方法构建SQL查询.这有点像Django吗?
在Django中构建和执行复杂查询的最佳方法是什么?有没有推荐的方法/最佳做法来进行这些类型的查询?
更新:
由于下面的mherren代码,我得到了很少的改动.这是代码的更新版本.
在我的views.py中我有这个:
def index(request):
blog_posts = Blog.objects.all().annotate(Count('comment')).order_by('-pub_date')[:5]
return render_to_response('blog/index.html',
{'blog_posts': blog_posts})
Run Code Online (Sandbox Code Playgroud)
在我的模板文件(index.html)中,我有这个:
Welcome...
{% if blog_posts %}
<ul>
{% for post in blog_posts %}
<li>
<b>
<a href="/blog/post/{{ post.id }}">{{ post.title }}</a>
</b> ({{ post.pub_date }})<br/>
{{ post.content }}<br/>
{{ post.comment__count }} comment(s)<br/>
by: {{ post.author }}<br/><br/>
</li>
{% endfor %}
</ul>
{% else %}
<p>No …Run Code Online (Sandbox Code Playgroud) 我正在使用redis + nowjs.我想知道如何处理hgetall()的结果?当我尝试在客户端显示"结果"时,我只得到[object Object](它可能是来自服务器端js的字符串).
// Redis结果是
redis> HSET cards:lightning-bolt name "Lightning Bolt"
(integer) 1
redis> HSET cards:lightning-bolt text "Blah blah blah"
(integer) 1
redis> HGETALL cards:lightning-bolt
1) "name"
2) "Lightning Bolt"
3) "text"
4) "Blah blah blah"
redis>
Run Code Online (Sandbox Code Playgroud)
//在我的服务器js中
everyone.now.signalShowRedisCard = function(card_id) {
var self = this;
client.hgetall(("cards:%s" % card_id), function (err, res) {
nowjs.getGroup(self.now.room).now.receiveShowRedisCard(res);
});
}
Run Code Online (Sandbox Code Playgroud)
//在我的客户端js中(警报只输出[object Object])
now.receiveShowRedisCard = function(card_data) {
alert("redis card: "+card_data);
try {
console.log('card data: '+ card_data);
} catch(e) {
console.log("Firebug not installed.");
}
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试实现一个Web服务,并需要一些(非常)简单的Authenticate来限制对服务的访问.
我发现了HMAC,我想我明白了如何实现它.但我想到了几个问题.
假设我在消费者方面有这个HTML表单.向我的服务器发出GET/POST请求时.
public_key使用secret_key?POST变量/数组的哈希?我认为发送public_key唯一的哈希就足够了但只是想确定并问你们.
我打算这样做:
public_keypublic_key使用secret_key.你的意见?
澄清: public_key就像client unique id我可以用来确定secret key在服务器上生成哈希的内容.
我想缓存一些东西.在我的core.php配置文件中,我有这个:
//short
Cache::config('short', array(
'engine' => 'File',
'duration' => '+1 hours',
'path' => CACHE,
'prefix' => 'cake_short_'
));
// long
Cache::config('long', array(
'engine' => 'File',
'duration' => '+1 week',
'probability' => 100,
'path' => CACHE . 'long' . DS,
));
Run Code Online (Sandbox Code Playgroud)
在我的控制器中,我有这个:
$xmlpublist = Cache::read('xmlpublist');
var_dump($xmlpublist);
//if cache is still set, return cache
if($xmlpublist !== false) {
die('cache A');
return $xmlpublist;
}
Cache::write('xmlpublist', "test", 'short');
die('cache C');
return $xml;
Run Code Online (Sandbox Code Playgroud)
我可以看到生成文件 - /path/to/cache/cake_short_xmlpublist
但是,当我Cache::read('xmlpublist'),我总是得到bool(false).我确保我对缓存目录都有读写访问权限.
期望: 从缓存中获取值.
结果: 我得到了布尔(假) …
django ×2
php ×2
caching ×1
cakephp ×1
django-forms ×1
eclipse ×1
hmac ×1
javascript ×1
knockout.js ×1
macos ×1
node.js ×1
oauth ×1
python ×1
redis ×1
security ×1
twitter ×1
web-services ×1
zend-studio ×1