我正在使用ruby-trello gem来访问Trello API。
我试过这个:
> board = Trello :: Member.find(‘me’)。boards.first> board.prefs [ ‘permissionLevel’]=> “组织”> board.organization ….
建设 这个答案 ,这是一个解决方法:
def org_public?(org) # If org comes from a board, it may be nil. We'll skip the philosophical conundrums # and assume an inaccessible or non-existent board is not public. return false if org.nil? path = "/organizations/#{org.id}/prefs" response = org.client.get(path) JSON.parse(response.body)['permissionLevel'] end def board_public?(board) # Sometimes board.organization will return a 401 error when there is a board. # Maybe it's been deleted? org = board.organization rescue nil # If board is public, sure return true if board.prefs['permissionLevel'] == 'public' # If board permission tied to org return true if board.prefs['permissionLevel'] == 'org' && org_public?(org) # Any other cases I'm missing? false end > board = Trello::Member.find('me').boards.first > board_public?(board) => true > board = Trello::Member.find('me').boards[1] > board_public?(board) => false