【问题标题】:Adding 'Share on Twitter' functionality on Django-powered site在 Django 支持的网站上添加“在 Twitter 上分享”功能
【发布时间】:2012-08-04 23:56:57
【问题描述】:

我正在尝试在我的 Django 支持网站的一个页面上添加“在 Twitter 上分享”功能。这是link_page.html的相关部分:

<a class="tweet_link metaSpacing" data-link_id={{ link.id }}>Share on Twitter</a>   

这是负责监听事件的 JavaScript 部分:

// tweet_link
$('.tweet_link').click(function(e){
    link_id = $(this).attr('data-link_id');
    var target = $(this);
    tweetLink(target);
});

function tweetLink(t){
    link_id = t.attr('data-link_id');
    $.ajax({
        type: "POST",
        data: { "link_id": link_id, "csrfmiddlewaretoken": csrfmiddlewaretoken},
        url: "/tweet_link",
    });     
};  

在 Django 中,我在 urls.py 的末尾添加了以下行:

url(r'^tweet_link/?$', 'portnoy.views.tweet_link'),

这是 Django 视图本身:

# tweet the link
def tweet_link(request):
    c = RequestContext(request)
    twitter = Twython(
        twitter_token = TWITTER_KEY,
        twitter_secret = TWITTER_SECRET,
        oauth_token = request.session['request_token']['oauth_token'],
        oauth_token_secret = request.session['request_token']['oauth_token_secret']
    )
    twitter.updateStatus(status="See how easy this was?")
    return HttpResponse('')

但是,当我点击“在 Twitter 上分享”链接时会发生什么,我在 Chrome 控制台上收到此错误:

POST http://127.0.0.1:8000/tweet_link 404 (NOT FOUND) 

知道如何解决这个问题吗?提前致谢!

【问题讨论】:

标签: javascript jquery django twitter share


【解决方案1】:

您的网址中不应包含?

url(r'^tweet_link/$', 'portnoy.views.tweet_link'),

你知道你可以简单地用这个 URL 启动一个链接来发推文:

https://twitter.com/intent/tweet?source=webclient&text=d+twitter+msg+goes+here

【讨论】:

    猜你喜欢
    • 2014-11-11
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 2013-05-04
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多