MOON
Server: Apache
System: Linux server2.shieldcogroup.com 3.10.0-1160.119.1.el7.tuxcare.els12.x86_64 #1 SMP Fri Nov 8 05:49:38 UTC 2024 x86_64
User: jacom (1029)
PHP: 8.1.34
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python2.7/site-packages/leapp/models/utils.py
from leapp.models.fields import ModelMisuseError


def init_from_tuple(model_class, field_names, data):
    """
    Create an instance of the given model class and use the data to initialize the fields with it.

    :param model_class: Model class to initialize with the given data
    :param field_names: Names of the fields to be mapped from the tuple
    :param data: Data to initialize the Model from
    :type data: dict
    :return: Instance of this class
    """
    if len(field_names) != len(data):
        raise ModelMisuseError(
            'Number of field names do not match number of tuple elements while initializing ' + model_class.__name__)
    return model_class(**dict(zip(field_names, data)))