Tutoriel par Examples: activerecord



<?php namespace models; use yii\db\ActiveRecord; use yii\behaviors\TimestampBehavior; class Post extends ActiveRecord { public static function tableName() { return 'post'; } public function rules() { ...
Si vous voulez simuler l'AR qui n'essaie pas de vous connecter à la base de données, vous pouvez le faire de la manière suivante (si vous utilisez PHPUnit): $post = $this->getMockBuilder('\app\model\Post') ->setMethods(['save', 'attributes']) ->getMock(); $post->metho...
Si vous avez besoin d'une méthode ActiveRecord pour générer une exception au lieu d'une valeur false en cas d'échec, vous pouvez ajouter ! pour eux. C'est très important. Comme certaines exceptions / échecs sont difficiles à détecter si vous n'utilisez pas! sur eux. J'ai rec...
Si vous devez rechercher un modèle ActiveRecord pour des valeurs similaires, vous pouvez être tenté d'utiliser LIKE ou ILIKE mais ce n'est pas portable entre les moteurs de base de données. De même, le recours à la réduction des coûts ou à la mise à jour permanente peut créer des problèmes ...
Vous pouvez récupérer une exception RecordNotFound avec une redirection au lieu d'afficher une page d'erreur: class ApplicationController < ActionController::Base # your other stuff rescue_from ActiveRecord::RecordNotFound do |exception| redirect_to root_path, 404, alert: ...
globalize gem est une excellente solution pour ajouter des traductions à vos modèles ActiveRecord . Vous pouvez l'installer en ajoutant ceci à votre Gemfile : gem 'globalize', '~> 5.0.0' Si vous utilisez Rails 5 vous devrez également ajouter activemodel-serializers-xml gem 'activemodel-ser...
# application.rb config.time_zone = 'Eastern Time (US & Canada)' config.active_record.default_timezone = :local
Bien que la méthode de la classe transaction soit appelée sur certaines classes ActiveRecord, les objets du bloc de transaction ne doivent pas nécessairement tous être des instances de cette classe. Cela est dû au fait que les transactions sont par connexion à la base de données, et non par modèle....

Page 1 de 1