Skip to content

TypeError: string indices must be integers #17

@tokejepsen

Description

@tokejepsen

Getting this error, when querying a layout;

    api.get_shot_data(project_code, production_shot_ref)
  File "/Volumes/warpfs1/Environment/Users/tokejepsen/production/senate-database/senate_database/database.py", line 37, in get_shot_data
    Production_Shot_Ref=production_shot_ref)
  File "/Volumes/warpfs1/Environment/Users/tokejepsen/production/senate-database/senate_database/database.py", line 58, in get_data
    return fm.toJSON(fm.doFind(**kwargs))
  File "/Volumes/warpfs1/Environment/Users/tokejepsen/production/senate-database/PyFileMaker/PyFileMaker/FMServer.py", line 425, in doFind
    return self._doAction('-find')
  File "/Volumes/warpfs1/Environment/Users/tokejepsen/production/senate-database/PyFileMaker/PyFileMaker/FMServer.py", line 620, in _doAction
    result = FMResultset.FMResultset(result)
  File "/Volumes/warpfs1/Environment/Users/tokejepsen/production/senate-database/PyFileMaker/PyFileMaker/FMResultset.py", line 34, in __init__
    self.doParseResultset()
  File "/Volumes/warpfs1/Environment/Users/tokejepsen/production/senate-database/PyFileMaker/PyFileMaker/FMResultset.py", line 112, in doParseResultset
    if rec['RECORDID'] == subrecordDict['RECORDID']:
TypeError: string indices must be integers

It seems to be related to a issue reported here; gozoinks/pyfilemaker#3

I seem to be able to fix it by having a fail safe for unicode;

https://gist.github.com/tokejepsen/1eb8cac0b2ed513ba7b31315ab512419#file-pf-py-L112

Don't know what that might entail for the rest of the code, but I can do a PR.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions