code: public void copyFrom(Model other) {
          if (!metaModelLocal.getTableName().equals(other.metaModelLocal.getTableName())) {
              throw new IllegalArgumentException("can only copy between the same types");
          }
          Map<String, Object> otherAttributes = other.getAttributes();
          for (String name : metaModelLocal.getAttributeNamesSkipId()) {
              attributes.put(name, otherAttributes.get(name));
              dirtyAttributeNames.add(name);
              // Why not use setRaw() here? Does the same and avoids duplication of code... (Garagoth)
              // other.setRaw(name, getRaw(name));
          }
      }
docs: Copies all attribute values (except for ID, created_at and updated_at) from other instance to this one.
  
  @param other source model.