You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

model.php.twig 961B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. {{ "<?php" }}
  2. namespace App\Http\DataAccess\Models;
  3. use Luticate\Utils\LuModel;
  4. use App\Http\DBO\{{ dbo_name.camel_upper }};
  5. class {{ model_name.camel_upper }} extends LuModel
  6. {
  7. function __construct()
  8. {
  9. parent::__construct();
  10. $this->timestamps = false;
  11. }
  12. public function toDbo()
  13. {
  14. $dbo = new {{ dbo_name.camel_upper }}();
  15. {% for column in columns %}
  16. $dbo->set{{ column.name.camel_upper }}($this->{{ column.name.as_it }});
  17. {% endfor %}
  18. return $dbo;
  19. }
  20. /**
  21. * @param $dbo \App\Http\DBO\{{ dbo_name.camel_upper }}
  22. * @param $dam LuModel|null
  23. * @return {{ model_name.camel_upper }}
  24. */
  25. public function fromDbo($dbo, $dam = null)
  26. {
  27. if (is_null($dam))
  28. $dam = new {{ model_name.camel_upper }}();
  29. {% for column in columns %}
  30. $dam->{{ column.name.as_it }} = $dbo->get{{ column.name.camel_upper }}();
  31. {% endfor %}
  32. return $dam;
  33. }
  34. }