Skip to main content

A little orm for config file

Project description

A little orm for config file, do transformation to/from python object

Examples

example.ini:

[Section1]
bool_field = True
int_field = 123
#int_default_field = 567
float_field = 456.7
string_field = hello, world

[Section2]
ip_field = 127.0.0.1
ipport_field = 127.0.0.1:12345
ipport_list_field = 127.0.0.1:12345, 127.0.0.2:12346

    [Section3]
    choice_field = release

example.py:

from ormconfig import *
import sys

class MyConfig(Config):
    class Section1(Section):
        bool_field = BoolField()
        int_field = IntField()
        int_default_field = IntField(default='default value 6')
        float_field = FloatField()
        string_field = StringField()
    class Section2(Section):
        ip_field = IPField()
        ipport_field = IPPortField()
        ipport_list_field = ListField(IPPortField())
    class Section3(Section):
                    choice_field = ChoiceField(StringField(), ['debug', 'release'], 'debug')

try:
    config = MyConfig.load('example.ini')
except Error as e:
    print('Failed to load file: %s' % str(e))
    sys.exit(1)

print(config.Section1.bool_field)
print(config.Section1.int_field)
print(config.Section1.int_default_field)
print(config.Section1.float_field)
print(config.Section1.string_field)
print(config.Section2.ip_field)
print(config.Section2.ipport_field)
print(config.Section2.ipport_list_field)
    print(config.Section3.choice_field)

output:

True
123
default value 6
456.7
hello, world
127.0.0.1
('127.0.0.1', 12345)
[('127.0.0.1', 12345), ('127.0.0.2', 12346)]
    release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ormconfig-0.1.3.zip (7.0 kB view details)

Uploaded Source

File details

Details for the file ormconfig-0.1.3.zip.

File metadata

  • Download URL: ormconfig-0.1.3.zip
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ormconfig-0.1.3.zip
Algorithm Hash digest
SHA256 cff0e025c5aad2142bdf1167d7575ff87e0422e3c0920fbb723c6718bcfcfe11
MD5 8afa11de7045c2fbebfcf73ba9c79e6b
BLAKE2b-256 ab5210984f09b1c7c4ff32f2b7bb5ee87b2614cb9cbadfc7dc6fafc4c39e3b00

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page