<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_path_attribute(obj, path):
 """Given a path like `related_record.related_record2.id`, this method will be able to pull the value of ID from that object, returning None if it doesn't exist. Args: obj (fleaker.db.Model):
 The object to attempt to pull the value from path (str):
 The path to follow to pull the value from Returns: (int|str|None):
 The value at the end of the path. None if it doesn't exist at any point in the path. """

        # Strip out ignored keys passed in
        path = path.replace('original.', '').replace('current_user.', '')

        attr_parts = path.split('.')
        res = obj

        try:
            for part in attr_parts:
                try:
                    res = getattr(res, part)
                except AttributeError:
                    res = getattr(res.get(), part)

        except (peewee.DoesNotExist, AttributeError):
            return None

        return res