小编Rob*_*rum的帖子

在字典中存储函数[Python]

我正在构建一个应用程序,我需要迭代一系列基本相同的步骤,节省了很少的代码(~15行).步骤数将根据项目的配置方式而有所不同,因此为每个潜在实例创建单独的函数似乎有点愚蠢.

在JavaScript中,我会做这样的事情:

var switches = [true, true, false, true];

var holder = {
    0: function() { /* do step0 */ }
    1: function() { /* do step1 */ }
    2: function() { /* do step2 */ }
    3: function() { /* do step3 */ }
    // ...etc...
}

for (var i = 0; i < switches.length; i++)
    if (switches[i])
        holder[i]();
Run Code Online (Sandbox Code Playgroud)

有没有办法在python中做类似的事情?我唯一能想到的是这样的事情:

switches = [True, True, False, True]

class Holder(object):
    @staticmethod
    def do_0():
        # do step0

    @staticmethod
    def do_1():
        # do …
Run Code Online (Sandbox Code Playgroud)

javascript python arrays dictionary data-structures

9
推荐指数
1
解决办法
724
查看次数

Devise + Omniauth 登录 Facebook 时调用操作通道

当我尝试使用 Omniauth 和 Devise 登录 Facebook 时,passthru被调用而不是facebook. 我如何传递link_to

user_omniauth_authorize_path(:facebook)
Run Code Online (Sandbox Code Playgroud)

我多次修改代码并尝试使用此路线:

  devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" } do
    get '/users/auth/:provider' => 'users/omniauth_callbacks#passthru'
  end
Run Code Online (Sandbox Code Playgroud)

  devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" } 
Run Code Online (Sandbox Code Playgroud)

但错误是一样的。我的行动facebook中有users/omniauth_callbacks_controller.rb

facebook ruby-on-rails omniauth ruby-on-rails-3 ruby-on-rails-3.2

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

在PHP中填充SQL数据库中的DropDown

我正在尝试从SQL数据库中获取数据,以便填充几个下拉列表.这是摘录,但如果您愿意,我可以发布更多内容.我没有把它全部包括在内,因为它超过了几行.

$queryData = mysql_query("SELECT DISTINCT DateTime AS DateTime FROM 'historicaldata' ORDER BY YEAR(DateTime), DAYOFYEAR(DateTime)");
$queryGroups = mysql_query("SELECT DISTINCT histgroupname AS GroupName FROM 'historicalgroups' WHERE `histgroupID` < 10 ORDER BY `histgroupname`");

$tracker = 0;
$dataArray = array();
$groupsArray = array();
$DateFormat1 = array();
$DateFormat2 = array();
$DayNumber = array();
$Month = array();
$Year = array();

while ($row = mysql_fetch_array($queryData)) {
    $dataArray[$tracker] = $row['DateTime'];
    $tracker++;
}

$tracker = 0;
while ($row = mysql_fetch_array($queryGroups)) {
    $groupsArray[$tracker] = $row['GroupName'];
    $tracker++;
}

$tracker = 0; …
Run Code Online (Sandbox Code Playgroud)

php sql database arrays

0
推荐指数
1
解决办法
6786
查看次数