2013-06-17 2 views
0

sfGuard를 기반으로 한 모듈에서 작업 중이므로 사용자가 레코드를 편집하거나 삭제할 수 있도록 허용해야합니다. 이것은 내가 사용자를 얻는 방법은 다음과 같습니다sfDoctrineGuard 플러그인에서 user_id 값을 얻는 방법은 무엇입니까?

$id_empresa = $this->getUser()->getGuardUser()->getSfGuardUserProfile()->getIdempresa(); 
$this->users = Doctrine_Core::getTable('sfGuardUser')->createQuery('u')->leftJoin('u.SfGuardUserProfile p')->where('idempresa = ?', $id_empresa)->execute(); 

그러나 나는 user_id의 값에 액세스하는 방법을 모르는 반복하고있어 동안보기있다. 나는 BasesfGuardUser을 확인했지만 Id가 없으면 조언이나 도움이 필요합니까?

<?php foreach ($users as $user): ?> 
    <tr> 
     <td><?php echo $user->getFirstName() ?></td> 
     <td><?php echo $user->getLastName() ?></td> 
     <td><?php echo $user->getEmailAddress() ?></td> 
     <td><?php echo $user->getUsername() ?></td> 
     <td><?php echo $user->getIsActive() ?></td> 
     <td> 
      <a href="<?php echo url_for('guard/users/' . $user->get('id') . '/edit') ?>" class="btn btn-success btn-mini">Editar</a> 
      <a href="<?php echo url_for('guard/users/' . $user->get('id')) ?>" class="btn btn-danger btn-mini">Eliminar</a> 
     </td> 
    </tr> 
<?php endforeach; ?> 
+0

'foreach ($ users as $ user) var_dump ($ user-> get ('id'))' – 1ed

+0

@ 1ed, 아니요, 작동하지 않아요. – Reynier

+0

작동해야합니다 (아마도'idempresa'는 id coloumn?)하지만'$ user-> getPrimaryKey()'를 시도해보십시오. URL을 생성하려면 라우트 이름과 객체를 'url_for ('sf_gaurd_user_edit ', $ user)와 같은 매개 변수로 사용해야합니다. '. 'php symfony app : routes backend'를 사용하여 사용할 수있는 경로를 확인하십시오. – 1ed

답변

2

문제는 url_for'guard/users/' . $user->get('id') . '/edit' 부분은 다음과 같습니다

는 추가 뷰 이에 대한 코드는 반복에 대한 코드입니다. 아마도 이 url_for에 유효한 매개 변수가 아니기 때문에 module/action으로 구문 분석되고 /1 부분이 무시되지만 확실하지 않을 수 있습니다. url_for('route_name', $object, true /* absolute */) 또는

url_for('route_name', array('sf_subject' => $object, 'extra_param' => 'value'), true /* absolute */) 당신이 가지고있는 경우 :

  • url_for('module/action', array('param1' => 'value1'), true /* absolute */)
  • url_for('@route_name?param1=value1', true /* absolute */)
  • url_for('route_name', array('param1' => 'value1'), true /* absolute */)
  • 이 객체 경로만을위한 것입니다 :

    IIRC url_for 실제로 4 유효한 형태를 갖는다 영형 경로 (예 : sfDoctrineRoute) 마지막 매개 변수를 사용해야합니다. 매개 변수가없는 비 객체 경로가있는 경우 3을 사용해야하고 매개 변수가없는 경로가있는 경우 2를 사용해야합니다.

+0

덕분에, 나는 이것을 처리하고 일을 끝내는 방법을 알아 낸다. – Reynier

관련 문제