2015-02-06 12 views
5

È solo per me o renderPartial() aggiungere uno spazio in più davanti all'output? Sembra di farlo con tutti i miei renderPartial(). render() funziona bene per me e non aggiunge uno spazio aggiuntivo.Yii 1.1.16 - renderPartial() aggiunge uno spazio all'inizio della produzione

ecco un esempio di codice mio. Cercando di generare un RSS, e ottenere l'errore di causa dello spazio aggiuntivo

public function actionFeed() 
    { 
     Yii::import('site.common.extensions.feed.*'); 

     $model = new ABC(); 

     $this->renderPartial('feed', array('model' => $model->findAll())); 
    } 

qui è il codice HTML generato

<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel> 

v'è uno spazio di fronte a <?xml>

se svuoto feed.php e basta mettere

<span>asadadasfaf</span> 

ci sarebbe ancora essere uno spazio di fronte a <span>

sto usando questa estensione per generare il RSS https://github.com/2amigos/efeed

A causa dello spazio, Firefox mi sta dando questo errore

XML Parsing Error: XML or text declaration not at start of entity 
Location: http://localhost/dev/frontend/www/abc/feed/ 
Line Number 1, Column 2: <?xml version="1.0" encoding="utf-8"?> 
-^ 

FYI, sto usando :

Yii 1.1.16 
OSX 10.10.2 
XAMPP 1.8.3-5 
CHROME 40.0.2214.94 (64-bit) 
FIREFOX 35.0.1 

Qualcuno sa di un lavoro in giro? o avere gli stessi problemi?

risposta

0

Non so esattamente perché lo renderPartial() stia aggiungendo ulteriore spazio ma è possibile fare qualcosa di simile.

public function actionFeed() 
    { 
     $this->layout = ''; 
     $this->render('feed', array('model' => $model->findAll())); 
    } 

Perché render() sta lavorando per voi e l'utilizzo utilizzando $this->layout='' è possibile disabilitare il rendering di layout per la vista.

Spero che funzioni per te.

+0

strano, ottenendo gli stessi risultati. e quando cambio 'feed.php' a solo'

ciao

'mostra nel layout – user2636556

1

Trovato il problema, ha avuto uno spazio di fronte alla mia tag <?php nel controllore chiamando l'azione. : \

+2

Fai la cosa giusta ed elimina questo post. – crafter

Problemi correlati